任务属性枚举 "任务模式、阻塞策略" 国际化优化

pull/MERGE
xuxueli 7 years ago
parent db703eb9d7
commit 1aeaded9a2

@ -1157,7 +1157,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
- 1、[迭代中]支持通过API服务操作任务信息 - 1、[迭代中]支持通过API服务操作任务信息
- 2、[迭代中]任务告警逻辑调整任务调度以及任务回调失败时均推送监控队列。后期考虑通过任务Log字段控制告警状态 - 2、[迭代中]任务告警逻辑调整任务调度以及任务回调失败时均推送监控队列。后期考虑通过任务Log字段控制告警状态
- 3、[迭代中]任务超时设置,超时任务主动终止; - 3、[迭代中]任务超时设置,超时任务主动终止;
- 4、[迭代中]依赖JAR中枚举国际化问题处理 - 4、任务属性枚举 "任务模式、阻塞策略" 国际化优化
### TODO LIST ### TODO LIST

@ -4,12 +4,14 @@ import com.xxl.job.admin.core.jobbean.RemoteHttpJobBean;
import com.xxl.job.admin.core.model.XxlJobInfo; import com.xxl.job.admin.core.model.XxlJobInfo;
import com.xxl.job.admin.core.thread.JobFailMonitorHelper; import com.xxl.job.admin.core.thread.JobFailMonitorHelper;
import com.xxl.job.admin.core.thread.JobRegistryMonitorHelper; import com.xxl.job.admin.core.thread.JobRegistryMonitorHelper;
import com.xxl.job.admin.core.util.I18nUtil;
import com.xxl.job.admin.dao.XxlJobGroupDao; import com.xxl.job.admin.dao.XxlJobGroupDao;
import com.xxl.job.admin.dao.XxlJobInfoDao; import com.xxl.job.admin.dao.XxlJobInfoDao;
import com.xxl.job.admin.dao.XxlJobLogDao; import com.xxl.job.admin.dao.XxlJobLogDao;
import com.xxl.job.admin.dao.XxlJobRegistryDao; import com.xxl.job.admin.dao.XxlJobRegistryDao;
import com.xxl.job.core.biz.AdminBiz; import com.xxl.job.core.biz.AdminBiz;
import com.xxl.job.core.biz.ExecutorBiz; import com.xxl.job.core.biz.ExecutorBiz;
import com.xxl.job.core.enums.ExecutorBlockStrategyEnum;
import com.xxl.job.core.rpc.netcom.NetComClientProxy; import com.xxl.job.core.rpc.netcom.NetComClientProxy;
import com.xxl.job.core.rpc.netcom.NetComServerFactory; import com.xxl.job.core.rpc.netcom.NetComServerFactory;
import org.quartz.*; import org.quartz.*;
@ -76,11 +78,20 @@ public final class XxlJobDynamicScheduler implements ApplicationContextAware {
NetComServerFactory.putService(AdminBiz.class, XxlJobDynamicScheduler.adminBiz); NetComServerFactory.putService(AdminBiz.class, XxlJobDynamicScheduler.adminBiz);
NetComServerFactory.setAccessToken(accessToken); NetComServerFactory.setAccessToken(accessToken);
// init i18n
initI18n();
// valid // valid
Assert.notNull(scheduler, "quartz scheduler is null"); Assert.notNull(scheduler, "quartz scheduler is null");
logger.info(">>>>>>>>> init xxl-job admin success."); logger.info(">>>>>>>>> init xxl-job admin success.");
} }
private void initI18n(){
for (ExecutorBlockStrategyEnum item:ExecutorBlockStrategyEnum.values()) {
item.setTitle(I18nUtil.getString("jobconf_block_".concat(item.name())));
}
}
public void destroy(){ public void destroy(){
// admin registry stop // admin registry stop
JobRegistryMonitorHelper.getInstance().toStop(); JobRegistryMonitorHelper.getInstance().toStop();

@ -191,6 +191,9 @@ jobgroup_del_limit_0=拒绝删除,该执行器使用中
jobgroup_del_limit_1=拒绝删除, 系统至少保留一个执行器 jobgroup_del_limit_1=拒绝删除, 系统至少保留一个执行器
## job conf ## job conf
jobconf_block_SERIAL_EXECUTION=单机串行
jobconf_block_DISCARD_LATER=丢弃后续调度
jobconf_block_COVER_EARLY=覆盖之前调度
jobconf_fail_alarm=失败告警 jobconf_fail_alarm=失败告警
jobconf_fail_retry=失败重试 jobconf_fail_retry=失败重试
jobconf_route_first=第一个 jobconf_route_first=第一个

@ -191,6 +191,9 @@ jobgroup_del_limit_0=Refuse to delete, the executor is being used
jobgroup_del_limit_1=Refuses to delete, the system retains at least one executor jobgroup_del_limit_1=Refuses to delete, the system retains at least one executor
## job conf ## job conf
jobconf_block_SERIAL_EXECUTION=Serial execution
jobconf_block_DISCARD_LATER=Discard Later
jobconf_block_COVER_EARLY=Cover Early
jobconf_fail_alarm=Fail Alarm jobconf_fail_alarm=Fail Alarm
jobconf_fail_retry=Fail Retry jobconf_fail_retry=Fail Retry
jobconf_route_first=First jobconf_route_first=First

@ -5,15 +5,19 @@ package com.xxl.job.core.enums;
*/ */
public enum ExecutorBlockStrategyEnum { public enum ExecutorBlockStrategyEnum {
SERIAL_EXECUTION("单机串行"), SERIAL_EXECUTION("Serial execution"),
/*CONCURRENT_EXECUTION("并行"),*/ /*CONCURRENT_EXECUTION("并行"),*/
DISCARD_LATER("丢弃后续调度"), DISCARD_LATER("Discard Later"),
COVER_EARLY("覆盖之前调度"); COVER_EARLY("Cover Early");
private final String title; private String title;
private ExecutorBlockStrategyEnum (String title) { private ExecutorBlockStrategyEnum (String title) {
this.title = title; this.title = title;
} }
public void setTitle(String title) {
this.title = title;
}
public String getTitle() { public String getTitle() {
return title; return title;
} }

Loading…
Cancel
Save