msg | project | 备注 |
---|---|---|
ignorePath.stream().anyMatch(url -> matcher.match(url, requestPath)) | crm-gateway-java | |
【1】一个boolean可以这样得到
傻逼,为什么不用 List.hashValue(Msg msg)
boolean canRun = TaskStatus.EXECUTION.getCode().equals(taskInfo.getStatus())
|| TaskStatus.WAIT_DISPATCH.getCode().equals(taskInfo.getStatus())
|| TaskStatus.RESERVE_EXECUTE.getCode().equals(taskInfo.getStatus())
|| WAIT_SERIAL_EXECUTE.getCode().equals(taskInfo.getStatus())
|| WAIT_NET_SWITCH.getCode().equals(taskInfo.getStatus())
|| WAIT_ONLINE.getCode().equals(taskInfo.getStatus());
【2】使用枚举的优雅
DjmsNetTpe netTpe = EnumUtils.parse(DjmsNetTpe.class, taskNetType);
int curDevNetTypeCode = curDevNetType == null ? -1 : curDevNetType.getCode();
switch (netTpe) {//netTpe是个枚举
case WIRED:
return NetType.NET_WIRED.getCode().equals(curDevNetTypeCode);
case WIFI:
case FIVE_G:
return (NetType.NET_WIRED.getCode().equals(curDevNetTypeCode) ||
NetType.NET_WIFI.getCode().equals(curDevNetTypeCode));
case THREE_FORE_G:
return (curDevNetTypeCode > 0);
default:
log.warn("unknown task netType:{}", taskNetType);
return false;
}
public enum DjmsNetTpe {
/**
* 执行任务时的网络要求
* */
WIRED(0, "有线"),
WIFI(1, "无线"),
THREE_FORE_G(2, "3G/4G"),
FIVE_G(3, "5G"),
;
private Integer code;
private String desc;
DjmsNetTpe(Integer code, String desc) {
this.code = code;
this.desc = desc;
}
public Integer getCode() {
return code;
}
【3】枚举再表现
switch (EnumUtils.parse(TaskStatus.class, taskInfo.getStatus())) {
case WAIT_DISPATCH:
case WAIT_ONLINE:
case WAIT_NET_SWITCH:
case WAIT_SERIAL_EXECUTE:
return taskInfo.getXxlJobId() != null && taskInfo.getXxlJobId() > 0;
default:
return false;
}
【4】return一个boolean的操作
可以是
List<Long> taskIds = taskService.getExclusiveRunningTaskIds(devId, TaskMode.EXCLUSIVE.getCode(), Lists.newArrayList(TaskStatus.EXECUTION.getCode()));
return !taskIds.isEmpty() && !taskIds.contains(taskInfo.getId());
可以是
return tiaojian? true:false;
显然,第一种是三目的变种,优雅的一批
【5】 使用Spring的Assert
Assert.notNull(taskInfo.getXxlJobId(), "jobId cant be null!");
Assert 判定 String 也是非常好用的啊,
【6】鉴定一个实体,不可为空,比拟Spring的Assert
public static <E extends Enum> Integer getCodeThrows(E e) {
Objects.requireNonNull(e, "EnumUtils' method getCode parameter `e` can't be null!");