com.supermap.services.components.impl
类 DefaultJobRunner
- java.lang.Object
-
- com.supermap.services.components.impl.DefaultJobRunner
-
- 所有已实现的接口:
- JobRunner, Disposable
- 直接已知子类:
- CloudJobRunner
public class DefaultJobRunner extends java.lang.Object implements JobRunner, Disposable
-
-
构造器概要
构造器 构造器和说明 DefaultJobRunner()
-
方法概要
方法 限定符和类型 方法和说明 void
addListener(JobRunnerListener listener)
添加监听器。void
addWorker(TileWorkerClient worker)
添加切图节点。void
addWorkers(java.util.List<TileWorkerClient> workers2Add)
添加切图节点。protected TileScaleInfo
caculateTileScaleInfo(ScaleBuildConfig scaleConfig, Geometry[] regions)
void
confirmBlankRegionInfos(java.lang.String jobId)
确认白图范围。void
deployJobToWorker(TileWorkerClient client)
分配切图任务给子节点。void
dispose()
释放资源对象。BlankTileInfo
getBlankTileInfos(double scale, int fromIndex, int toIndex)
获取白图信息。JobBuildConfig
getJobConfig()
获取任务配置信息。java.lang.String
getRemoteWorkspacePath(JobBuildConfig jobBuildConfig)
获取子节点工作空间路径。protected RuntimeJobStateBuilderFactory
getRuntimeJobStateBuilderFactory()
JobState
getState()
获取Job状态。TilesetDesc
getTilesetDesc()
获取任务的目标信息.void
init(JobBuildConfig pConfig, JobState pState, JobDataDeploy dataDeploy)
对Runner进行初始化protected TileScaleInfo
initScaleInfoByCacheBounds(Point2D leftTop, ScaleBuildConfig scaleConfig, Rectangle2D cacheBounds)
void
notifyJobDeployCompleted(java.lang.String workerId)
通知切图主节点,切图作业在切图节点部署完毕void
notifyTaskCompleted(java.lang.String taskId, java.lang.String workerId)
通知切图主节点,某个单元切图任务完成。void
notifyTaskCompleted(java.lang.String taskId, java.lang.String workerId, TileTaskBuildResult result)
通知切图主节点,某个单元切图任务完成。void
notifyTaskFailed(java.lang.String taskid, java.lang.String workerId)
通知切图主节点,某个单元切图任务失败。void
notifyWorkerDisconnected(java.lang.String workerId)
通知切图主节点,某个子节点连接失败。void
setDeployTaskThreadCount(int deployTaskThreadCount)
void
setTileCountPerTask(long value)
设置每个单元切图任务分配的瓦片数。void
setTileRegionManager(TileRegionStateManager tileRegionStateManager)
设置切片区域管理器。void
start()
开始任务。void
stop()
停止任务。void
updateBlankRegions(double scale, java.lang.String[] invalidRegionIds, java.lang.String[] validRegionIds, java.lang.String[] noneMarkedRegionIds, boolean markAllInvalid, boolean markAllValid)
更新白图范围。void
updateJobConfig(JobBuildConfig config)
更新任务配置void
updateTileJob(Tile[] tiles)
更新切图任务。
-
-
-
方法详细资料
-
init
public void init(JobBuildConfig pConfig, JobState pState, JobDataDeploy dataDeploy)
从接口复制的说明:JobRunner
对Runner进行初始化
-
addListener
public void addListener(JobRunnerListener listener)
从接口复制的说明:JobRunner
添加监听器。
- 指定者:
addListener
在接口中JobRunner
-
deployJobToWorker
public void deployJobToWorker(TileWorkerClient client)
从接口复制的说明:JobRunner
分配切图任务给子节点。
- 指定者:
deployJobToWorker
在接口中JobRunner
-
caculateTileScaleInfo
protected TileScaleInfo caculateTileScaleInfo(ScaleBuildConfig scaleConfig, Geometry[] regions)
-
initScaleInfoByCacheBounds
protected TileScaleInfo initScaleInfoByCacheBounds(Point2D leftTop, ScaleBuildConfig scaleConfig, Rectangle2D cacheBounds)
-
addWorker
public void addWorker(TileWorkerClient worker)
添加切图节点。
- 参数:
worker
-- 从以下版本开始:
- 8.1.1
-
addWorkers
public void addWorkers(java.util.List<TileWorkerClient> workers2Add)
从接口复制的说明:JobRunner
添加切图节点。
- 指定者:
addWorkers
在接口中JobRunner
-
getState
public JobState getState()
从接口复制的说明:JobRunner
获取Job状态。 返回的状态并不是实时的,但是是有效的。 Job执行的过程中,Job的状态可能会被并发的被修改。 当调用这个方法的时候,如果有其它线程正在修改Job的状态,即修改Job所属JobState对象的字段, 这个方法不会与修改的线程同步,所以它返回的状态不是实时的。 但是返回的状态肯定是某次修改完成后的状态,而不是并发修改中的状态(修改中的状态可能是无效非法的),所以返回的状态是有效的。
-
getTilesetDesc
public TilesetDesc getTilesetDesc()
从接口复制的说明:JobRunner
获取任务的目标信息.- 指定者:
getTilesetDesc
在接口中JobRunner
- 返回:
-
setTileCountPerTask
public void setTileCountPerTask(long value)
从接口复制的说明:JobRunner
设置每个单元切图任务分配的瓦片数。关于单元切图任务,请参见
TileTask
.- 指定者:
setTileCountPerTask
在接口中JobRunner
- 参数:
value
- 瓦片数。
-
notifyJobDeployCompleted
public void notifyJobDeployCompleted(java.lang.String workerId)
从接口复制的说明:JobRunner
通知切图主节点,切图作业在切图节点部署完毕
- 指定者:
notifyJobDeployCompleted
在接口中JobRunner
-
notifyTaskCompleted
public void notifyTaskCompleted(java.lang.String taskId, java.lang.String workerId)
从接口复制的说明:JobRunner
通知切图主节点,某个单元切图任务完成。
- 指定者:
notifyTaskCompleted
在接口中JobRunner
- 参数:
taskId
- 已完成的单元切图任务ID。workerId
- taskId单元切图任务所在的Woker。
-
notifyTaskCompleted
public void notifyTaskCompleted(java.lang.String taskId, java.lang.String workerId, TileTaskBuildResult result)
从接口复制的说明:JobRunner
通知切图主节点,某个单元切图任务完成。
- 指定者:
notifyTaskCompleted
在接口中JobRunner
-
notifyTaskFailed
public void notifyTaskFailed(java.lang.String taskid, java.lang.String workerId)
从接口复制的说明:JobRunner
通知切图主节点,某个单元切图任务失败。
- 指定者:
notifyTaskFailed
在接口中JobRunner
-
notifyWorkerDisconnected
public void notifyWorkerDisconnected(java.lang.String workerId)
从接口复制的说明:JobRunner
通知切图主节点,某个子节点连接失败。
- 指定者:
notifyWorkerDisconnected
在接口中JobRunner
-
getRemoteWorkspacePath
public java.lang.String getRemoteWorkspacePath(JobBuildConfig jobBuildConfig)
获取子节点工作空间路径。
- 参数:
jobBuildConfig
-- 返回:
- 从以下版本开始:
- 8.1.1
-
getJobConfig
public JobBuildConfig getJobConfig()
从接口复制的说明:JobRunner
获取任务配置信息。
- 指定者:
getJobConfig
在接口中JobRunner
- 返回:
-
updateJobConfig
public void updateJobConfig(JobBuildConfig config)
从接口复制的说明:JobRunner
更新任务配置- 指定者:
updateJobConfig
在接口中JobRunner
-
dispose
public void dispose()
从接口复制的说明:Disposable
释放资源对象。
- 指定者:
dispose
在接口中Disposable
-
updateTileJob
public void updateTileJob(Tile[] tiles)
从接口复制的说明:JobRunner
更新切图任务。
- 指定者:
updateTileJob
在接口中JobRunner
-
getBlankTileInfos
public BlankTileInfo getBlankTileInfos(double scale, int fromIndex, int toIndex)
从接口复制的说明:JobRunner
获取白图信息。
- 指定者:
getBlankTileInfos
在接口中JobRunner
- 返回:
-
confirmBlankRegionInfos
public void confirmBlankRegionInfos(java.lang.String jobId)
从接口复制的说明:JobRunner
确认白图范围。
- 指定者:
confirmBlankRegionInfos
在接口中JobRunner
-
updateBlankRegions
public void updateBlankRegions(double scale, java.lang.String[] invalidRegionIds, java.lang.String[] validRegionIds, java.lang.String[] noneMarkedRegionIds, boolean markAllInvalid, boolean markAllValid)
从接口复制的说明:JobRunner
更新白图范围。
- 指定者:
updateBlankRegions
在接口中JobRunner
-
setTileRegionManager
public void setTileRegionManager(TileRegionStateManager tileRegionStateManager)
从接口复制的说明:JobRunner
设置切片区域管理器。
- 指定者:
setTileRegionManager
在接口中JobRunner
-
getRuntimeJobStateBuilderFactory
protected RuntimeJobStateBuilderFactory getRuntimeJobStateBuilderFactory()
-
setDeployTaskThreadCount
public void setDeployTaskThreadCount(int deployTaskThreadCount)
-
-