【fix sonar】 JobRegistryMonitorHelper.java文件
This commit is contained in:
+9
-12
@@ -25,9 +25,7 @@ public class JobRegistryMonitorHelper {
|
|||||||
private Thread registryThread;
|
private Thread registryThread;
|
||||||
private volatile boolean toStop = false;
|
private volatile boolean toStop = false;
|
||||||
public void start(){
|
public void start(){
|
||||||
registryThread = new Thread(new Runnable() {
|
registryThread = new Thread(()-> {
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
while (!toStop) {
|
while (!toStop) {
|
||||||
try {
|
try {
|
||||||
// auto registry group
|
// auto registry group
|
||||||
@@ -36,12 +34,12 @@ public class JobRegistryMonitorHelper {
|
|||||||
|
|
||||||
// remove dead address (admin/executor)
|
// remove dead address (admin/executor)
|
||||||
List<Integer> ids = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryDao().findDead(RegistryConfig.DEAD_TIMEOUT, new Date());
|
List<Integer> ids = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryDao().findDead(RegistryConfig.DEAD_TIMEOUT, new Date());
|
||||||
if (ids!=null && ids.size()>0) {
|
if (ids!=null && !ids.isEmpty()) {
|
||||||
XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryDao().removeDead(ids);
|
XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryDao().removeDead(ids);
|
||||||
}
|
}
|
||||||
|
|
||||||
// fresh online address (admin/executor)
|
// fresh online address (admin/executor)
|
||||||
HashMap<String, List<String>> appAddressMap = new HashMap<String, List<String>>();
|
HashMap<String, List<String>> appAddressMap = new HashMap<>();
|
||||||
List<XxlJobRegistry> list = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryDao().findAll(RegistryConfig.DEAD_TIMEOUT, new Date());
|
List<XxlJobRegistry> list = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryDao().findAll(RegistryConfig.DEAD_TIMEOUT, new Date());
|
||||||
if (list != null) {
|
if (list != null) {
|
||||||
for (XxlJobRegistry item: list) {
|
for (XxlJobRegistry item: list) {
|
||||||
@@ -49,7 +47,7 @@ public class JobRegistryMonitorHelper {
|
|||||||
String appname = item.getRegistryKey();
|
String appname = item.getRegistryKey();
|
||||||
List<String> registryList = appAddressMap.get(appname);
|
List<String> registryList = appAddressMap.get(appname);
|
||||||
if (registryList == null) {
|
if (registryList == null) {
|
||||||
registryList = new ArrayList<String>();
|
registryList = new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!registryList.contains(item.getRegistryValue())) {
|
if (!registryList.contains(item.getRegistryValue())) {
|
||||||
@@ -63,16 +61,16 @@ public class JobRegistryMonitorHelper {
|
|||||||
// fresh group address
|
// fresh group address
|
||||||
for (XxlJobGroup group: groupList) {
|
for (XxlJobGroup group: groupList) {
|
||||||
List<String> registryList = appAddressMap.get(group.getAppname());
|
List<String> registryList = appAddressMap.get(group.getAppname());
|
||||||
String addressListStr = null;
|
StringBuilder addressListStr = null;
|
||||||
if (registryList!=null && !registryList.isEmpty()) {
|
if (registryList!=null && !registryList.isEmpty()) {
|
||||||
Collections.sort(registryList);
|
Collections.sort(registryList);
|
||||||
addressListStr = "";
|
addressListStr = new StringBuilder();
|
||||||
for (String item:registryList) {
|
for (String item:registryList) {
|
||||||
addressListStr += item + ",";
|
addressListStr.append(item).append(",");
|
||||||
}
|
}
|
||||||
addressListStr = addressListStr.substring(0, addressListStr.length()-1);
|
addressListStr = new StringBuilder(addressListStr.substring(0, addressListStr.length() - 1));
|
||||||
}
|
}
|
||||||
group.setAddressList(addressListStr);
|
group.setAddressList(addressListStr.toString());
|
||||||
XxlJobAdminConfig.getAdminConfig().getXxlJobGroupDao().update(group);
|
XxlJobAdminConfig.getAdminConfig().getXxlJobGroupDao().update(group);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -90,7 +88,6 @@ public class JobRegistryMonitorHelper {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
logger.info(">>>>>>>>>>> xxl-job, job registry monitor thread stop");
|
logger.info(">>>>>>>>>>> xxl-job, job registry monitor thread stop");
|
||||||
}
|
|
||||||
});
|
});
|
||||||
registryThread.setDaemon(true);
|
registryThread.setDaemon(true);
|
||||||
registryThread.setName("xxl-job, admin JobRegistryMonitorHelper");
|
registryThread.setName("xxl-job, admin JobRegistryMonitorHelper");
|
||||||
|
|||||||
Reference in New Issue
Block a user