public class ArcGISRestMapProvider extends RemoteTileProviderBase
ArcGIS Rest map service provider.
ArcGISRestMapProvider supports drawing operations and map queries. The map query function provided by the Query resource of ArcGIS REST map service, and support sql query, spatial query, scope query; Do not support distance inquiries, recent feature query; Unsupported query parameters are: query start record location, expect to return the number of records, only return to the ground information.
RemoteTileProviderBase.GetDefaultImageWhenExceptionTiledMapProviderBase.TileDataConverter, TiledMapProviderBase.TileImageDrawer, TiledMapProviderBase.TileImageParameterSEND_REQUEST_COUNTCACHE_DIR, LINK_MARK, lock, logger, message, QUESTION_MARK, REGEX, REPLACEMENT, tilePixHeight, tilePixWidth| Constructor and Description |
|---|
ArcGISRestMapProvider()
Default constructor.
|
ArcGISRestMapProvider(ArcGISRestMapProviderSetting setting)
Constructors with parameters
|
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
cacheEnabled() |
protected void |
checkSetting(MapProviderSetting setting)
Checks the configuration of map service provider.
|
MapImage |
getMapImage(MapParameter mapParameter, ImageOutputOption outputOption)
Gets map images according to map parameters and image output settings.
|
protected Point2D |
getOrigin(java.lang.String mapName)
Get the geographical coordinate of left upper corner of the map.
|
OutputFormat[] |
getSupportImageFormat(java.lang.String mapName)
Return the supported image formats.
|
double[] |
getSupportResolutions(java.lang.String mapName)
Returns the resolution of the current service support. |
protected TiledMapProviderBase.TileDataConverter |
getTileDataConverter() |
protected byte[] |
getTileImage(TiledMapProviderBase.TileImageParameter parameter) |
protected java.lang.String |
getTileImageUrl(TiledMapProviderBase.TileImageParameter parameter) |
VectorStyle |
getVectorStyle(java.lang.String mapName, java.lang.String[] layerNames, VectorStyleType type)
Gets the specified vector layer style in the specified map.
|
protected java.util.Map<java.lang.String,MapParameter> |
initDefaultMapParameter()
Initializing the default map status, a mapping object will be returned, of which the key is map name, valude is map parameter object.
|
protected java.util.List<java.lang.String> |
initSupportedMapNames()
Initializes the supported map list.
|
protected boolean |
isResolutionEquals(double resolution1, double resolution2)
Determines if two resolutions are within the tolerance (1.0E-6)
|
QueryResult |
queryByBounds(java.lang.String mapName, Rectangle2D bounds, QueryParameterSet queryParameterSet)
Queries the geometries in the specified range on the map.
|
QueryResult |
queryByGeometry(java.lang.String mapName, Geometry geometry, SpatialQueryMode spatialQueryMode, QueryParameterSet queryParameterSet)
Queries geometric objects that satisfy a certain spatial relationship with a specified geometric object and meet query conditions on a specified map.
|
QueryResult |
queryBySQL(java.lang.String mapName, QueryParameterSet queryParameterSet)
Performs SQL query on specified map.
|
boolean |
support(java.lang.String mapName, MapCapability capability)
Determines whether the map supports the specified function.
|
dispose, generateBigImage, getContent, getContent, getContent, getImageBySendURL, getImageBySendURL, init, sendRequestByHttpURLConnection, sendRequestByHttpURLConnection, viewEntireclearCache, fillWatermark, findNearest, getDefaultMapParameter, getDefaultMapParameters, getMapParameter, getMapProviderSetting, getNames, getOverview, getProximalResolution, getProximalResolution, getResolutoinByScale, getResource, getResource, measureArea, measureDistance, outputImage, outputImage, outputImageToFile, outputImageToFile, queryByDistance, rectifyMapParameter, setDefaultMapParameter, setDefaultMapParameters, setMapProviderSetting, setProviderContext, updateMappublic ArcGISRestMapProvider(ArcGISRestMapProviderSetting setting)
Constructors with parameters
setting - Configure by ArcGIS Rest service providerpublic ArcGISRestMapProvider()
protected java.util.Map<java.lang.String,MapParameter> initDefaultMapParameter()
TiledMapProviderBaseInitializing the default map status, a mapping object will be returned, of which the key is map name, valude is map parameter object.
initDefaultMapParameter in class TiledMapProviderBasepublic double[] getSupportResolutions(java.lang.String mapName)
TiledMapProviderBaseReturns the resolution of the current service support. If all resolutions are supported, empty is returned.
getSupportResolutions in class TiledMapProviderBasemapName - The map name.public MapImage getMapImage(MapParameter mapParameter, ImageOutputOption outputOption)
MapProviderGets map images according to map parameters and image output settings.
getMapImage in interface MapProvidergetMapImage in class TiledMapProviderBasemapParameter - Map parameters.outputOption - Image output settings.protected java.lang.String getTileImageUrl(TiledMapProviderBase.TileImageParameter parameter)
getTileImageUrl in class RemoteTileProviderBaseprotected byte[] getTileImage(TiledMapProviderBase.TileImageParameter parameter)
getTileImage in class RemoteTileProviderBasepublic QueryResult queryByGeometry(java.lang.String mapName, Geometry geometry, SpatialQueryMode spatialQueryMode, QueryParameterSet queryParameterSet)
MapProviderQueries geometric objects that satisfy a certain spatial relationship with a specified geometric object and meet query conditions on a specified map.
queryByGeometry in interface MapProviderqueryByGeometry in class TiledMapProviderBasemapName - The map name.geometry - The geometric object, which has spatial information and shape information, but no attribute information.spatialQueryMode - The spatial query mode, which defines several spatial relationships between geometries, and it allows users to construct filter conditions to perform querying. For example, searching spatial objects which are contained in specified region object, or which have a disjoint or adjacent relationship with the specified region object.queryParameterSet - Query parameters can query multiple layers of a map. The query parameters in a single layer can be set in queryParameterSet.queryParams[i] .public QueryResult queryBySQL(java.lang.String mapName, QueryParameterSet queryParameterSet)
MapProviderPerforms SQL query on specified map.
queryBySQL in interface MapProviderqueryBySQL in class TiledMapProviderBasemapName - The map name.queryParameterSet - Query parameters can query multiple layers of a map. The query parameters in a single layer can be set in queryParameterSet.queryParams[i] .public QueryResult queryByBounds(java.lang.String mapName, Rectangle2D bounds, QueryParameterSet queryParameterSet)
MapProviderQueries the geometries in the specified range on the map.
queryByBounds in interface MapProviderqueryByBounds in class TiledMapProviderBasemapName - The map name.bounds - The specified query bounds.protected void checkSetting(MapProviderSetting setting)
TiledMapProviderBasecheckSetting in class TiledMapProviderBaseprotected Point2D getOrigin(java.lang.String mapName)
TiledMapProviderBaseGet the geographical coordinate of left upper corner of the map.
getOrigin in class TiledMapProviderBasemapName - The map name.protected java.util.List<java.lang.String> initSupportedMapNames()
TiledMapProviderBaseinitSupportedMapNames in class TiledMapProviderBasepublic OutputFormat[] getSupportImageFormat(java.lang.String mapName)
TiledMapProviderBaseReturn the supported image formats.
getSupportImageFormat in class TiledMapProviderBasemapName - The map name.protected boolean cacheEnabled()
cacheEnabled in class TiledMapProviderBase
public boolean support(java.lang.String mapName,
MapCapability capability)
MapProvidersupport in interface MapProvidersupport in class TiledMapProviderBasemapName - The map name.capability - Function type.protected TiledMapProviderBase.TileDataConverter getTileDataConverter()
getTileDataConverter in class TiledMapProviderBase
protected boolean isResolutionEquals(double resolution1,
double resolution2)
TiledMapProviderBaseDetermines if two resolutions are within the tolerance (1.0E-6)
isResolutionEquals in class TiledMapProviderBaseresolution1 - doubleresolution2 - doublepublic VectorStyle getVectorStyle(java.lang.String mapName, java.lang.String[] layerNames, VectorStyleType type)
MapProvidergetVectorStyle in interface MapProvidergetVectorStyle in class TiledMapProviderBasemapName - The map name.layerNames - The layer name.type - The vector style type.