diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobGroupController.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobGroupController.java index 45f04f55..426b0075 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobGroupController.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobGroupController.java @@ -10,6 +10,8 @@ import com.xxl.job.admin.mapper.XxlJobRegistryMapper; import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.enums.RegistryConfig; import com.xxl.sso.core.annotation.XxlSso; +import com.xxl.tool.core.CollectionTool; +import com.xxl.tool.core.StringTool; import jakarta.annotation.Resource; import jakarta.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; @@ -68,7 +70,7 @@ public class JobGroupController { public ReturnT save(XxlJobGroup xxlJobGroup){ // valid - if (xxlJobGroup.getAppname()==null || xxlJobGroup.getAppname().trim().length()==0) { + if (StringTool.isBlank(xxlJobGroup.getAppname())) { return ReturnT.ofFail((I18nUtil.getString("system_please_input")+"AppName") ); } if (xxlJobGroup.getAppname().length()<4 || xxlJobGroup.getAppname().length()>64) { @@ -77,14 +79,14 @@ public class JobGroupController { if (xxlJobGroup.getAppname().contains(">") || xxlJobGroup.getAppname().contains("<")) { return ReturnT.ofFail( "AppName"+I18nUtil.getString("system_unvalid") ); } - if (xxlJobGroup.getTitle()==null || xxlJobGroup.getTitle().trim().length()==0) { + if (StringTool.isBlank(xxlJobGroup.getTitle())) { return ReturnT.ofFail((I18nUtil.getString("system_please_input") + I18nUtil.getString("jobgroup_field_title")) ); } if (xxlJobGroup.getTitle().contains(">") || xxlJobGroup.getTitle().contains("<")) { return ReturnT.ofFail(I18nUtil.getString("jobgroup_field_title")+I18nUtil.getString("system_unvalid") ); } if (xxlJobGroup.getAddressType()!=0) { - if (xxlJobGroup.getAddressList()==null || xxlJobGroup.getAddressList().trim().length()==0) { + if (StringTool.isBlank(xxlJobGroup.getAddressList())) { return ReturnT.ofFail( I18nUtil.getString("jobgroup_field_addressType_limit") ); } if (xxlJobGroup.getAddressList().contains(">") || xxlJobGroup.getAddressList().contains("<")) { @@ -93,7 +95,7 @@ public class JobGroupController { String[] addresss = xxlJobGroup.getAddressList().split(","); for (String item: addresss) { - if (item==null || item.trim().length()==0) { + if (StringTool.isBlank(item)) { return ReturnT.ofFail( I18nUtil.getString("jobgroup_field_registryList_unvalid") ); } } @@ -111,36 +113,32 @@ public class JobGroupController { @XxlSso(role = Consts.ADMIN_ROLE) public ReturnT update(XxlJobGroup xxlJobGroup){ // valid - if (xxlJobGroup.getAppname()==null || xxlJobGroup.getAppname().trim().length()==0) { + if (StringTool.isBlank(xxlJobGroup.getAppname())) { return ReturnT.ofFail((I18nUtil.getString("system_please_input")+"AppName") ); } if (xxlJobGroup.getAppname().length()<4 || xxlJobGroup.getAppname().length()>64) { return ReturnT.ofFail( I18nUtil.getString("jobgroup_field_appname_length") ); } - if (xxlJobGroup.getTitle()==null || xxlJobGroup.getTitle().trim().length()==0) { + if (StringTool.isBlank(xxlJobGroup.getTitle())) { return ReturnT.ofFail( (I18nUtil.getString("system_please_input") + I18nUtil.getString("jobgroup_field_title")) ); } if (xxlJobGroup.getAddressType() == 0) { // 0=自动注册 List registryList = findRegistryByAppName(xxlJobGroup.getAppname()); String addressListStr = null; - if (registryList!=null && !registryList.isEmpty()) { + if (CollectionTool.isNotEmpty(registryList)) { Collections.sort(registryList); - addressListStr = ""; - for (String item:registryList) { - addressListStr += item + ","; - } - addressListStr = addressListStr.substring(0, addressListStr.length()-1); + addressListStr = String.join(",", registryList); } xxlJobGroup.setAddressList(addressListStr); } else { // 1=手动录入 - if (xxlJobGroup.getAddressList()==null || xxlJobGroup.getAddressList().trim().length()==0) { + if (StringTool.isBlank(xxlJobGroup.getAddressList())) { return ReturnT.ofFail( I18nUtil.getString("jobgroup_field_addressType_limit") ); } String[] addresss = xxlJobGroup.getAddressList().split(","); for (String item: addresss) { - if (item==null || item.trim().length()==0) { + if (StringTool.isBlank(item)) { return ReturnT.ofFail(I18nUtil.getString("jobgroup_field_registryList_unvalid") ); } } @@ -154,21 +152,19 @@ public class JobGroupController { } private List findRegistryByAppName(String appnameParam){ - HashMap> appAddressMap = new HashMap>(); + HashMap> appAddressMap = new HashMap<>(); List list = xxlJobRegistryMapper.findAll(RegistryConfig.DEAD_TIMEOUT, new Date()); - if (list != null) { + if (CollectionTool.isNotEmpty(list)) { for (XxlJobRegistry item: list) { - if (RegistryConfig.RegistType.EXECUTOR.name().equals(item.getRegistryGroup())) { - String appname = item.getRegistryKey(); - List registryList = appAddressMap.get(appname); - if (registryList == null) { - registryList = new ArrayList(); - } - - if (!registryList.contains(item.getRegistryValue())) { - registryList.add(item.getRegistryValue()); - } - appAddressMap.put(appname, registryList); + if (!RegistryConfig.RegistType.EXECUTOR.name().equals(item.getRegistryGroup())) { + continue; + } + + String appname = item.getRegistryKey(); + List registryList = appAddressMap.computeIfAbsent(appname, k -> new ArrayList<>()); + + if (!registryList.contains(item.getRegistryValue())) { + registryList.add(item.getRegistryValue()); } } } diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobInfoController.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobInfoController.java index a78cbac9..5c44e40f 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobInfoController.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobInfoController.java @@ -17,7 +17,7 @@ import com.xxl.job.core.glue.GlueTypeEnum; import com.xxl.job.core.util.DateUtil; import com.xxl.sso.core.helper.XxlSsoHelper; import com.xxl.sso.core.model.LoginInfo; -import com.xxl.tool.core.StringTool; +import com.xxl.tool.core.CollectionTool; import com.xxl.tool.response.Response; import jakarta.annotation.Resource; import jakarta.servlet.http.HttpServletRequest; @@ -63,7 +63,7 @@ public class JobInfoController { // filter group List jobGroupList = JobGroupPermissionUtil.filterJobGroupByPermission(request, jobGroupListTotal); - if (jobGroupList==null || jobGroupList.isEmpty()) { + if (CollectionTool.isEmpty(jobGroupList)) { throw new XxlJobException(I18nUtil.getString("jobgroup_empty")); } diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobLogController.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobLogController.java index 7f53f3b0..7849a93c 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobLogController.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobLogController.java @@ -17,13 +17,14 @@ import com.xxl.job.core.biz.model.LogParam; import com.xxl.job.core.biz.model.LogResult; import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.util.DateUtil; +import com.xxl.tool.core.CollectionTool; +import com.xxl.tool.core.StringTool; import jakarta.annotation.Resource; import jakarta.servlet.http.HttpServletRequest; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; -import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; @@ -59,7 +60,7 @@ public class JobLogController { List jobGroupListTotal = xxlJobGroupMapper.findAll(); // filter jobGroup List jobGroupList = JobGroupPermissionUtil.filterJobGroupByPermission(request, jobGroupListTotal); - if (jobGroupList==null || jobGroupList.isEmpty()) { + if (CollectionTool.isEmpty(jobGroupList)) { throw new XxlJobException(I18nUtil.getString("jobgroup_empty")); } // write jobGroup @@ -118,7 +119,7 @@ public class JobLogController { // parse param Date triggerTimeStart = null; Date triggerTimeEnd = null; - if (filterTime!=null && filterTime.trim().length()>0) { + if (StringTool.isNotBlank(filterTime)) { String[] temp = filterTime.split(" - "); if (temp.length == 2) { triggerTimeStart = DateUtil.parseDateTime(temp[0]); @@ -179,7 +180,7 @@ public class JobLogController { } // fix xss - if (logResult.getContent()!=null && StringUtils.hasText(logResult.getContent().getLogContent())) { + if (logResult.getContent()!=null && StringTool.isNotBlank(logResult.getContent().getLogContent())) { String newLogContent = filter(logResult.getContent().getLogContent()); logResult.getContent().setLogContent(newLogContent); } diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobUserController.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobUserController.java index 76814caa..12ca233f 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobUserController.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/biz/JobUserController.java @@ -10,13 +10,13 @@ import com.xxl.job.core.biz.model.ReturnT; import com.xxl.sso.core.annotation.XxlSso; import com.xxl.sso.core.helper.XxlSsoHelper; import com.xxl.sso.core.model.LoginInfo; +import com.xxl.tool.core.StringTool; import com.xxl.tool.encrypt.SHA256Tool; import com.xxl.tool.response.Response; import jakarta.annotation.Resource; import jakarta.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; -import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; @@ -81,7 +81,7 @@ public class JobUserController { public ReturnT add(XxlJobUser xxlJobUser) { // valid username - if (!StringUtils.hasText(xxlJobUser.getUsername())) { + if (StringTool.isBlank(xxlJobUser.getUsername())) { return ReturnT.ofFail(I18nUtil.getString("system_please_input")+I18nUtil.getString("user_username") ); } xxlJobUser.setUsername(xxlJobUser.getUsername().trim()); @@ -89,7 +89,7 @@ public class JobUserController { return ReturnT.ofFail(I18nUtil.getString("system_lengh_limit")+"[4-20]" ); } // valid password - if (!StringUtils.hasText(xxlJobUser.getPassword())) { + if (StringTool.isBlank(xxlJobUser.getPassword())) { return ReturnT.ofFail(I18nUtil.getString("system_please_input")+I18nUtil.getString("user_password") ); } xxlJobUser.setPassword(xxlJobUser.getPassword().trim()); @@ -123,7 +123,7 @@ public class JobUserController { } // valid password - if (StringUtils.hasText(xxlJobUser.getPassword())) { + if (StringTool.isNotBlank(xxlJobUser.getPassword())) { xxlJobUser.setPassword(xxlJobUser.getPassword().trim()); if (!(xxlJobUser.getPassword().length()>=4 && xxlJobUser.getPassword().length()<=20)) { return ReturnT.ofFail(I18nUtil.getString("system_lengh_limit")+"[4-20]" ); diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/model/XxlJobGroup.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/model/XxlJobGroup.java index e76815d7..57f7b773 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/model/XxlJobGroup.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/model/XxlJobGroup.java @@ -1,5 +1,7 @@ package com.xxl.job.admin.model; +import com.xxl.tool.core.StringTool; + import java.util.ArrayList; import java.util.Arrays; import java.util.Date; @@ -20,8 +22,8 @@ public class XxlJobGroup { // registry list private List registryList; // 执行器地址列表(系统注册) public List getRegistryList() { - if (addressList!=null && addressList.trim().length()>0) { - registryList = new ArrayList(Arrays.asList(addressList.split(","))); + if (StringTool.isNotBlank(addressList)) { + registryList = new ArrayList<>(Arrays.asList(addressList.split(","))); } return registryList; } diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/model/XxlJobUser.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/model/XxlJobUser.java index 7e1419ff..9c7b8506 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/model/XxlJobUser.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/model/XxlJobUser.java @@ -1,7 +1,5 @@ package com.xxl.job.admin.model; -import org.springframework.util.StringUtils; - /** * @author xuxueli 2019-05-04 16:43:12 */ @@ -62,21 +60,4 @@ public class XxlJobUser { this.permission = permission; } - // plugin - public boolean validPermission(int jobGroup){ - if (this.role == 1) { - return true; - } else { - if (StringUtils.hasText(this.permission)) { - for (String permissionItem : this.permission.split(",")) { - if (String.valueOf(jobGroup).equals(permissionItem)) { - return true; - } - } - } - return false; - } - - } - } diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobRegistryHelper.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobRegistryHelper.java index cf36ba3c..b025a83a 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobRegistryHelper.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobRegistryHelper.java @@ -1,14 +1,14 @@ package com.xxl.job.admin.scheduler.thread; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.model.XxlJobGroup; import com.xxl.job.admin.model.XxlJobRegistry; +import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.core.biz.model.RegistryParam; import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.enums.RegistryConfig; +import com.xxl.tool.core.StringTool; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.util.StringUtils; import java.util.*; import java.util.concurrent.*; @@ -149,9 +149,9 @@ public class JobRegistryHelper { public ReturnT registry(RegistryParam registryParam) { // valid - if (!StringUtils.hasText(registryParam.getRegistryGroup()) - || !StringUtils.hasText(registryParam.getRegistryKey()) - || !StringUtils.hasText(registryParam.getRegistryValue())) { + if (StringTool.isBlank(registryParam.getRegistryGroup()) + || StringTool.isBlank(registryParam.getRegistryKey()) + || StringTool.isBlank(registryParam.getRegistryValue())) { return ReturnT.ofFail("Illegal Argument."); } @@ -181,9 +181,9 @@ public class JobRegistryHelper { public ReturnT registryRemove(RegistryParam registryParam) { // valid - if (!StringUtils.hasText(registryParam.getRegistryGroup()) - || !StringUtils.hasText(registryParam.getRegistryKey()) - || !StringUtils.hasText(registryParam.getRegistryValue())) { + if (StringTool.isBlank(registryParam.getRegistryGroup()) + || StringTool.isBlank(registryParam.getRegistryKey()) + || StringTool.isBlank(registryParam.getRegistryValue())) { return ReturnT.ofFail("Illegal Argument."); }