com.supermap.services.providers
Class RemoteTileProviderBase
- java.lang.Object
-
- com.supermap.services.components.spi.TiledMapProviderBase
-
- com.supermap.services.providers.RemoteTileProviderBase
-
- All Implemented Interfaces:
- Disposable, MapProvider, ProviderContextAware
- Direct Known Subclasses:
- ArcGISRestMapProvider, BaiduMapProvider, BingMapsMapProvider, CloudMapProvider, GoogleMapsMapProvider, OpenStreetMapProvider, TiandituMapProvider, WMTSMapProvider
public abstract class RemoteTileProviderBase extends TiledMapProviderBase
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description protected static interfaceRemoteTileProviderBase.GetDefaultImageWhenException-
Nested classes/interfaces inherited from class com.supermap.services.components.spi.TiledMapProviderBase
TiledMapProviderBase.TileDataConverter, TiledMapProviderBase.TileImageDrawer, TiledMapProviderBase.TileImageParameter
-
-
Field Summary
Fields Modifier and Type Field and Description protected static intSEND_REQUEST_COUNTWhen the network is not good, the failures times for accessing url.-
Fields inherited from class com.supermap.services.components.spi.TiledMapProviderBase
CACHE_DIR, LINK_MARK, lock, logger, message, QUESTION_MARK, REGEX, REPLACEMENT, tilePixHeight, tilePixWidth
-
-
Constructor Summary
Constructors Constructor and Description RemoteTileProviderBase()RemoteTileProviderBase(MapProviderSetting setting)
-
Method Summary
Methods Modifier and Type Method and Description voiddispose()Release the resource object.protected java.util.concurrent.atomic.AtomicBooleangenerateBigImage(TiledMapProviderBase.TileImageDrawer drawer, TiledMapProviderBase.TileImageParameter[] tileImageParameters)protected java.lang.StringgetContent(java.lang.String url, java.lang.String method, int number)For the specified URL HTTP request, get the response content.protected java.lang.StringgetContent(java.lang.String url, java.lang.String method, int number, java.io.InputStream entityStream)protected java.lang.StringgetContent(java.lang.String url, java.lang.String method, int number, java.io.InputStream entityStream, java.util.Map<java.lang.String,java.lang.String> headers)For the specified URL HTTP request, get the response content.protected byte[]getImageBySendURL(java.lang.String tileImageUrl)Gets a picture based on urlprotected byte[]getImageBySendURL(java.lang.String tileImageUrl, RemoteTileProviderBase.GetDefaultImageWhenException exceptionOpertor)Gets a picture based on urlprotected byte[]getTileImage(TiledMapProviderBase.TileImageParameter tileParam)protected abstract java.lang.StringgetTileImageUrl(TiledMapProviderBase.TileImageParameter tileParam)protected voidinit(MapProviderSetting setting)Initialization function.protected java.util.Map<java.lang.String,java.lang.Object>sendRequestByHttpURLConnection(java.lang.String urlStr, java.lang.String method, java.io.InputStream requestStream, int number)Send an HTTP request viaHttpURLConnection.protected java.util.Map<java.lang.String,java.lang.Object>sendRequestByHttpURLConnection(java.lang.String urlStr, java.lang.String method, java.io.InputStream requestStream, java.util.Map<java.lang.String,java.lang.String> headers, int number)MapImageviewEntire(java.lang.String layerName, MapParameter mapParameter, ImageOutputOption outputOption)Displays a map in the Full Extent mode according to map layer name, map parameters and image output settings.-
Methods inherited from class com.supermap.services.components.spi.TiledMapProviderBase
cacheEnabled, checkSetting, clearCache, fillWatermark, findNearest, getDefaultMapParameter, getDefaultMapParameters, getMapImage, getMapParameter, getMapProviderSetting, getNames, getOrigin, getOverview, getProximalResolution, getProximalResolution, getResolutoinByScale, getResource, getResource, getSupportImageFormat, getSupportResolutions, getTileDataConverter, getVectorStyle, initDefaultMapParameter, initSupportedMapNames, isResolutionEquals, measureArea, measureDistance, outputImage, outputImage, outputImageToFile, outputImageToFile, queryByBounds, queryByDistance, queryByGeometry, queryBySQL, rectifyMapParameter, setDefaultMapParameter, setDefaultMapParameters, setMapProviderSetting, setProviderContext, support, updateMap
-
-
-
-
Field Detail
-
SEND_REQUEST_COUNT
protected static final int SEND_REQUEST_COUNT
When the network is not good, the failures times for accessing url.
-
-
Constructor Detail
-
RemoteTileProviderBase
public RemoteTileProviderBase()
-
RemoteTileProviderBase
public RemoteTileProviderBase(MapProviderSetting setting)
-
-
Method Detail
-
init
protected void init(MapProviderSetting setting)
Description copied from class:TiledMapProviderBaseInitialization function. This function does not carry on null judgment on parameter, but it may judge the correction of the contents.
- Overrides:
initin classTiledMapProviderBase- Parameters:
setting- The configuration object of service provider.
-
generateBigImage
protected java.util.concurrent.atomic.AtomicBoolean generateBigImage(TiledMapProviderBase.TileImageDrawer drawer, TiledMapProviderBase.TileImageParameter[] tileImageParameters)
- Specified by:
generateBigImagein classTiledMapProviderBase
-
viewEntire
public MapImage viewEntire(java.lang.String layerName, MapParameter mapParameter, ImageOutputOption outputOption)
Description copied from interface:MapProviderDisplays a map in the Full Extent mode according to map layer name, map parameters and image output settings.
The full geographic map extent to display is the minimum circumscribed rectangle of the specified layer.
- Specified by:
viewEntirein interfaceMapProvider- Overrides:
viewEntirein classTiledMapProviderBase- Parameters:
layerName- Layer name, used to determine the full map extent.mapParameter- Map parameters.outputOption- Image output settings.- Returns:
- The Map object.
-
getImageBySendURL
protected byte[] getImageBySendURL(java.lang.String tileImageUrl, RemoteTileProviderBase.GetDefaultImageWhenException exceptionOpertor)Gets a picture based on url- Parameters:
tileImageUrl-exceptionOpertor- When there is an exception to the operation- Returns:
- the corresponding image for url
-
getContent
protected java.lang.String getContent(java.lang.String url, java.lang.String method, int number, java.io.InputStream entityStream)
-
getContent
protected java.lang.String getContent(java.lang.String url, java.lang.String method, int number, java.io.InputStream entityStream, java.util.Map<java.lang.String,java.lang.String> headers)For the specified URL HTTP request, get the response content.
- Parameters:
url- The specified URL .method- An HTTP method that executes a URI, such as "GET".number- The number of requests.entityStream- The request body for POST request.- Returns:
- The HTTP response content converted to the text format.
-
getContent
protected java.lang.String getContent(java.lang.String url, java.lang.String method, int number)For the specified URL HTTP request, get the response content.
- Parameters:
url- The specified URL .method- An HTTP method that executes a URI, such as "GET".number- The number of requests- Returns:
- The HTTP response content converted to the text format.
-
sendRequestByHttpURLConnection
protected java.util.Map<java.lang.String,java.lang.Object> sendRequestByHttpURLConnection(java.lang.String urlStr, java.lang.String method, java.io.InputStream requestStream, java.util.Map<java.lang.String,java.lang.String> headers, int number)
-
sendRequestByHttpURLConnection
protected java.util.Map<java.lang.String,java.lang.Object> sendRequestByHttpURLConnection(java.lang.String urlStr, java.lang.String method, java.io.InputStream requestStream, int number)Send an HTTP request via
HttpURLConnection.- Parameters:
urlStr- Request URI.method- HTTP methods such as "GET".requestStream- Request stream.- Returns:
- Response to the result mapping, the key for the project name, such as status, entity, value for the project value.
-
getImageBySendURL
protected byte[] getImageBySendURL(java.lang.String tileImageUrl)
Gets a picture based on url- Parameters:
tileImageUrl-- Returns:
- the corresponding image for url
-
getTileImage
protected byte[] getTileImage(TiledMapProviderBase.TileImageParameter tileParam)
-
dispose
public void dispose()
Description copied from class:TiledMapProviderBaseRelease the resource object.
- Specified by:
disposein interfaceDisposable- Overrides:
disposein classTiledMapProviderBase
-
getTileImageUrl
protected abstract java.lang.String getTileImageUrl(TiledMapProviderBase.TileImageParameter tileParam)
-
-