feat(dev_1.1.0):
1、客户端完成map抽象类定义
This commit is contained in:
parent
49eb2a0bc1
commit
93fd46001e
@ -11,5 +11,6 @@ import com.aizuda.snailjob.common.core.model.JobContext;
|
||||
* @since 2.4.0
|
||||
*/
|
||||
public interface IJobExecutor {
|
||||
|
||||
void jobExecute(JobContext jobContext);
|
||||
}
|
||||
|
@ -0,0 +1,19 @@
|
||||
package com.aizuda.snailjob.client.job.core.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* Task执行结果
|
||||
*
|
||||
* @author: opensnail
|
||||
* @date : 2024-06-12 13:59
|
||||
*/
|
||||
@Data
|
||||
public class MrTaskResult {
|
||||
|
||||
private String taskId;
|
||||
|
||||
private boolean success;
|
||||
|
||||
private String result;
|
||||
}
|
@ -19,6 +19,7 @@ import com.google.common.util.concurrent.ListeningExecutorService;
|
||||
import com.google.common.util.concurrent.MoreExecutors;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.concurrent.ThreadPoolExecutor;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
@ -94,4 +95,6 @@ public abstract class AbstractJobExecutor implements IJobExecutor {
|
||||
|
||||
protected abstract ExecuteResult doJobExecute(JobArgs jobArgs);
|
||||
|
||||
protected abstract void doMapExecute(List<?> taskList, String mapName);
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,24 @@
|
||||
package com.aizuda.snailjob.client.job.core.executor;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author zhengweilin
|
||||
* @version 1.0.0
|
||||
* @date 2024/06/12
|
||||
*/
|
||||
@Slf4j
|
||||
public abstract class AbstractMapExecutor extends AbstractJobExecutor {
|
||||
|
||||
@Override
|
||||
public void doMapExecute(List<?> taskList, String mapName) {
|
||||
|
||||
if (CollectionUtils.isEmpty(taskList)) {
|
||||
return;
|
||||
}
|
||||
System.out.println("TODO");
|
||||
}
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
package com.aizuda.snailjob.client.job.core.executor;
|
||||
|
||||
import com.aizuda.snailjob.client.job.core.dto.MrTaskResult;
|
||||
import com.aizuda.snailjob.client.model.ExecuteResult;
|
||||
import com.aizuda.snailjob.common.core.model.JobContext;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author zhengweilin
|
||||
* @version 1.0.0
|
||||
* @date 2024/06/12
|
||||
*/
|
||||
public abstract class AbstractMapReduceExecutor extends AbstractMapExecutor {
|
||||
|
||||
protected abstract ExecuteResult doReduceExecute(JobContext jobContext, List<MrTaskResult> mrTaskResultList);
|
||||
}
|
@ -7,6 +7,8 @@ import com.aizuda.snailjob.client.model.ExecuteResult;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.util.ReflectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 基于注解的执行器
|
||||
*
|
||||
@ -28,4 +30,9 @@ public class AnnotationJobExecutor extends AbstractJobExecutor {
|
||||
return (ExecuteResult) ReflectionUtils.invokeMethod(jobExecutorInfo.getMethod(), jobExecutorInfo.getExecutor());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doMapExecute(List<?> taskList, String mapName) {
|
||||
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user