feat: optimize code of PowerJobProcessorLoader

This commit is contained in:
tjq 2023-01-17 23:18:14 +08:00
parent 4d2e037107
commit 3d5a5ac342

View File

@ -7,8 +7,10 @@ import tech.powerjob.worker.extension.processor.ProcessorBean;
import tech.powerjob.worker.extension.processor.ProcessorDefinition; import tech.powerjob.worker.extension.processor.ProcessorDefinition;
import tech.powerjob.worker.extension.processor.ProcessorFactory; import tech.powerjob.worker.extension.processor.ProcessorFactory;
import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Optional;
/** /**
* PowerJobProcessorLoader * PowerJobProcessorLoader
@ -29,6 +31,10 @@ public class PowerJobProcessorLoader {
public ProcessorBean load(ProcessorDefinition definition) { public ProcessorBean load(ProcessorDefinition definition) {
return def2Bean.computeIfAbsent(definition, ignore -> { return def2Bean.computeIfAbsent(definition, ignore -> {
for (ProcessorFactory pf : processorFactoryList) { for (ProcessorFactory pf : processorFactoryList) {
if (!Optional.ofNullable(pf.supportTypes()).orElse(Collections.emptySet()).contains(definition.getProcessorType())) {
continue;
}
try { try {
ProcessorBean processorBean = pf.build(definition); ProcessorBean processorBean = pf.build(definition);
if (processorBean != null) { if (processorBean != null) {