public class RestRealspaceProvider extends RestProviderBase implements RealspaceProvider, ProviderContextAware
Rest realspace service provider.
RestRealspaceProvider provides access to SuperMap 3D related services from iServer realspace REST service and encapsulates GIS functionality related to SuperMap 3D.
RestRealspaceProvider supports access to 3D scenes and 3D datasets; does not support symbol operations; does not support 3D data caching.
RestProviderBase.CacheModel, RestProviderBase.RestRequestException
JAVA_POSTFIX, javaConverter, JSON_POSTFIX, jsonConverter, jsonDecoder, lock, logger, message
Constructor and Description |
---|
RestRealspaceProvider()
The Constructor.
|
RestRealspaceProvider(RestRealspaceProviderSetting setting)
The Constructor.
|
Modifier and Type | Method and Description |
---|---|
boolean |
cleanCacheData(java.lang.String dataName)
Clears the cache of dynamic publishing data.
|
java.lang.String |
getCacheAccessKey()
Returns the password used to encrypt the cached data.
|
RealspaceDataResult |
getData(RealspaceDataParam dataParam)
Gets 3D tile data results.
|
RealspaceDataResult |
getData(java.lang.String sceneName, java.lang.String layerName, RealspaceDataParam dataParam)
According to the scene name and layer name and tile parameters three-dimensional tile data results.
|
byte[] |
getDataConfig(java.lang.String dataName)
Gets the configuration file for the 3D cache data by name.
|
byte[] |
getDataConfig(java.lang.String dataName, CompressType compressType)
Gets the configuration file for the 3D cache data by name.
|
java.util.List<RealspaceDataInfo> |
getDataInfos()
Gets all the 3D data of the current Provider.
|
java.lang.String |
getDataVersion(java.lang.String dataName, int xIndex, int yIndex, int level, java.lang.String fileExtension)
Obtain the latest version number of the tile data according to the index.
|
java.lang.String |
getDataVersion(java.lang.String dataName, java.lang.String relativePath)
Obtains the latest version number of the tile data according to the relative path.
|
java.lang.String |
getLayerExtendXML(java.lang.String sceneName, java.lang.String layerName)
Gets the layer extension information for the specified layer
|
PrjCoordSys |
getLayerPrj(java.lang.String sceneName, java.lang.String layerName)
Gets the projection information for the specified layer
|
byte[] |
getModelIndex(java.lang.String dataName)
Gets the model index file for the 3D cache data by name.
|
java.util.List<OfflineDataInfo> |
getOfflineDataPaths(java.lang.String sceneName, java.lang.String layerName)
Gets all offline data paths for a particular 3D layer under a particular 3D scene
|
protected RestProviderSetting |
getRestProviderSetting()
Return the rest service provider configuration information.
|
SceneInfo |
getSceneInfo(java.lang.String sceneName)
According to the name of the 3D scene, gets the information of the 3D scene.
|
java.util.List<java.lang.String> |
getSceneNames()
Gets the names of all available 3D scenes in the current service provider.
|
RealspaceTilesRevisionInfo |
getTilesRevisionInfo(java.lang.String dataName, long revisionNumber)
Gets the tile change information for the specified version number.
|
byte[] |
getVectorIndex(java.lang.String dataName)
Obtains the index file of the 3D vector cache data by name.
|
boolean |
isDataAvailable(java.lang.String dataName)
Whether the three-dimensional data is available.
|
boolean |
isSceneAvailable(java.lang.String sceneName)
Whether the 3D scene is available.
|
boolean |
isSecurityEnabled()
Whether the security mechanism is enabled.
|
RealspaceDataResult[] |
outputDataToMemory(java.lang.String sceneName, java.lang.String layerName, Output3DDataToMemoryParam outputParam)
Generates 3D tiles into memory based on scene name and layer name
|
void |
setProviderContext(ProviderContext context)
Sets the service provider context
|
clearCache, dispose, executeRequest, executeRequest, executeRequest, executeRequestForByteArray, executeRequestForByteArray, executeRequestForByteArray, executeRequestForByteArray, executeRequestForList, executeRequestForList, executeRequestForList, executeRequestForList, executeRequestForStream, executeRequestForStream, executeRequestForStream, executeRequestForText, executeRequestForText, executeRequestForText, handleExeption, init, newAndSetClient, rectifyRestServiceRootURL
public RestRealspaceProvider()
The Constructor.
public RestRealspaceProvider(RestRealspaceProviderSetting setting)
The Constructor.
setting
- Rest realspace service provider parameter object.public void setProviderContext(ProviderContext context)
ProviderContextAware
Sets the service provider context
setProviderContext
in interface ProviderContextAware
context
- service provider contextpublic java.util.List<java.lang.String> getSceneNames() throws RealspaceException
RealspaceProvider
getSceneNames
in interface RealspaceProvider
RealspaceException
- 3D exception information.public SceneInfo getSceneInfo(java.lang.String sceneName) throws RealspaceException
RealspaceProvider
getSceneInfo
in interface RealspaceProvider
sceneName
- the name of the 3D scene.RealspaceException
- 3D exception information.public byte[] getDataConfig(java.lang.String dataName) throws RealspaceException
RealspaceProvider
getDataConfig
in interface RealspaceProvider
dataName
- The name of the 3D data. Corresponds to the name of the 3D layer in the SuperMap 3D scene (LayerName).RealspaceException
- 3D exception information.public byte[] getDataConfig(java.lang.String dataName, CompressType compressType) throws RealspaceException
RealspaceProvider
getDataConfig
in interface RealspaceProvider
dataName
- The name of the 3D data. Corresponds to the name of the 3D layer in the SuperMap 3D scene (LayerName).RealspaceException
- 3D exception information.public byte[] getModelIndex(java.lang.String dataName) throws RealspaceException
RealspaceProvider
Gets the model index file for the 3D cache data by name.
The file is indexed with "index" as the file extension name, and the configuration file for the model cache data (the file with the extension "scm") is located in the same parent directory.
getModelIndex
in interface RealspaceProvider
dataName
- The name of the 3D data. Corresponds to the name of the 3D layer in the SuperMap 3D scene (LayerName).RealspaceException
- 3D exception information.public byte[] getVectorIndex(java.lang.String dataName) throws RealspaceException
RealspaceProvider
getVectorIndex
in interface RealspaceProvider
dataName
- The name of the 3D data. Corresponds to the name of the 3D layer in the SuperMap 3D scene (LayerName).RealspaceException
- 3D exception information.public java.util.List<RealspaceDataInfo> getDataInfos() throws RealspaceException
RealspaceProvider
getDataInfos
in interface RealspaceProvider
RealspaceException
- 3D exception information.public boolean isDataAvailable(java.lang.String dataName) throws RealspaceException
RealspaceProvider
isDataAvailable
in interface RealspaceProvider
dataName
- The name of the 3D data. Corresponds to the name of the 3D layer in the SuperMap 3D scene (LayerName).RealspaceException
- 3D exception information.public boolean isSceneAvailable(java.lang.String sceneName) throws RealspaceException
RealspaceProvider
isSceneAvailable
in interface RealspaceProvider
sceneName
- the name of the 3D scene.RealspaceException
- 3D exception information.public boolean isSecurityEnabled()
RealspaceProvider
isSecurityEnabled
in interface RealspaceProvider
public java.lang.String getCacheAccessKey()
RealspaceProvider
getCacheAccessKey
in interface RealspaceProvider
public boolean cleanCacheData(java.lang.String dataName) throws RealspaceException
RealspaceProvider
cleanCacheData
in interface RealspaceProvider
RealspaceException
public java.util.List<OfflineDataInfo> getOfflineDataPaths(java.lang.String sceneName, java.lang.String layerName)
RealspaceProvider
getOfflineDataPaths
in interface RealspaceProvider
sceneName
- Name of 3D scene.protected RestProviderSetting getRestProviderSetting()
RestProviderBase
getRestProviderSetting
in class RestProviderBase
public RealspaceDataResult getData(RealspaceDataParam dataParam) throws RealspaceException
RealspaceProvider
getData
in interface RealspaceProvider
dataParam
- Tile parameters.RealspaceException
public RealspaceDataResult getData(java.lang.String sceneName, java.lang.String layerName, RealspaceDataParam dataParam) throws RealspaceException
RealspaceProvider
getData
in interface RealspaceProvider
sceneName
- Scene name.layerName
- Layer name.dataParam
- Tile parameters.RealspaceException
public RealspaceDataResult[] outputDataToMemory(java.lang.String sceneName, java.lang.String layerName, Output3DDataToMemoryParam outputParam) throws RealspaceException
RealspaceProvider
outputDataToMemory
in interface RealspaceProvider
sceneName
- Scene name.layerName
- Layer nameRealspaceException
public RealspaceTilesRevisionInfo getTilesRevisionInfo(java.lang.String dataName, long revisionNumber) throws RealspaceException
RealspaceProvider
getTilesRevisionInfo
in interface RealspaceProvider
revisionNumber
- version number.RealspaceException
public java.lang.String getDataVersion(java.lang.String dataName, int xIndex, int yIndex, int level, java.lang.String fileExtension) throws RealspaceException
RealspaceProvider
getDataVersion
in interface RealspaceProvider
dataName
- corresponds to the name of the 3D layer in the SuperMap 3D scene (LayerName).xIndex
- the index of the tile data in the X direction.yIndex
- the index of the tile data in the Y direction.level
- The layer number of the tile data, only the 3D cache data of the model needs to be set.fileExtension
- Tile data extension name. Including * .png, *. Jpg, *. bil and so on.RealspaceException
- 3D exception information.public java.lang.String getDataVersion(java.lang.String dataName, java.lang.String relativePath) throws RealspaceException
RealspaceProvider
Obtains the latest version number of the tile data according to the relative path.
The setting of the relative data of the tile data is as follows:
getDataVersion
in interface RealspaceProvider
dataName
- The name of the 3D data. Corresponds to the name of the 3D layer in the SuperMap 3D scene (LayerName).relativePath
- the relative path of tile data.RealspaceException
- 3D exception information.public PrjCoordSys getLayerPrj(java.lang.String sceneName, java.lang.String layerName)
RealspaceProvider
getLayerPrj
in interface RealspaceProvider
sceneName
- Scene name.layerName
- Layer namepublic java.lang.String getLayerExtendXML(java.lang.String sceneName, java.lang.String layerName) throws RealspaceException
RealspaceProvider
getLayerExtendXML
in interface RealspaceProvider
sceneName
- Scene name.layerName
- Layer nameRealspaceException