feat: define ProcessorFactory

This commit is contained in:
tjq 2023-01-17 22:05:48 +08:00
parent fbd75a6ec7
commit 2982410d80
2 changed files with 7 additions and 2 deletions

View File

@ -6,7 +6,7 @@ import lombok.experimental.Accessors;
import tech.powerjob.worker.core.processor.sdk.BasicProcessor; import tech.powerjob.worker.core.processor.sdk.BasicProcessor;
/** /**
* 处理器对象理论上只需要返回 BasicProcessor但为了扩展性还是选择封装为对象 * 处理器对象
* *
* @author tjq * @author tjq
* @since 2023/1/17 * @since 2023/1/17
@ -20,4 +20,9 @@ public class ProcessorBean {
* 真正用来执行逻辑的处理器对象 * 真正用来执行逻辑的处理器对象
*/ */
private transient BasicProcessor processor; private transient BasicProcessor processor;
/**
* 加载该处理器对象的 classLoader可空空则使用 {@link Object#getClass()#getClassLoader() 代替}
*/
private transient ClassLoader classLoader;
} }

View File

@ -13,7 +13,7 @@ public interface ProcessorFactory {
* 根据处理器定义构建处理器对象 * 根据处理器定义构建处理器对象
* 注意Processor 为单例对象 PowerJob 对每一个 ProcessorBean 只调用一次 build 方法 * 注意Processor 为单例对象 PowerJob 对每一个 ProcessorBean 只调用一次 build 方法
* @param processorDefinition 处理器定义 * @param processorDefinition 处理器定义
* @return ProcessorBean * @return null or ProcessorBean
*/ */
ProcessorBean build(ProcessorDefinition processorDefinition); ProcessorBean build(ProcessorDefinition processorDefinition);
} }