fix: 配置中心未配置线程池启动报错,增加判空,提前返回
pull/400/head
hui 2 years ago
parent 2cf6fa839d
commit f0291ec027

@ -29,6 +29,7 @@ import cn.hutool.core.util.StrUtil;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import java.util.List;
import java.util.Map;
@ -42,6 +43,7 @@ import java.util.stream.Collectors;
* @date 2022/2/25 00:24
*/
@AllArgsConstructor
@Slf4j
public class CoreNotifyConfigBuilder implements NotifyConfigBuilder {
private final AlarmControlHandler alarmControlHandler;
@ -53,14 +55,16 @@ public class CoreNotifyConfigBuilder implements NotifyConfigBuilder {
Map<String, List<NotifyConfigDTO>> resultMap = Maps.newHashMap();
boolean globalAlarm = bootstrapCoreProperties.getAlarm();
List<ExecutorProperties> executors = bootstrapCoreProperties.getExecutors();
if (CollectionUtil.isEmpty(executors)) {
log.error("Failed to buildNotify,executors configuration is empty");
return resultMap;
}
List<ExecutorProperties> actual = executors.stream().filter(each -> Optional.ofNullable(each.getNotify()).map(notify -> notify.getIsAlarm()).orElse(false)).collect(Collectors.toList());
if (!globalAlarm && CollectionUtil.isEmpty(actual)) {
return resultMap;
}
if (CollectionUtil.isNotEmpty(executors)) {
for (ExecutorProperties executor : executors) {
resultMap.putAll(buildSingleNotifyConfig(executor));
}
for (ExecutorProperties executor : executors) {
resultMap.putAll(buildSingleNotifyConfig(executor));
}
return resultMap;
}

Loading…
Cancel
Save