org.shoulder.batch.service.ext.BatchTaskSliceHandler Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of shoulder-batch Show documentation
Show all versions of shoulder-batch Show documentation
Shoulder 扩展-批处理模块,提供批量数据导入、导出、异步校验、导入历史记录管理等能力。
package org.shoulder.batch.service.ext;
import org.shoulder.batch.model.BatchDataSlice;
import org.shoulder.batch.model.BatchRecordDetail;
import java.util.List;
/**
* 任务分片处理器
* 使用者自行实现该接口,可在这里处理
*
* @author lym
*/
public interface BatchTaskSliceHandler {
/**
* 是否支持
*
* @param dataType 数据类型
* @param operationType 操作方式
* @return 是否支持
*/
default boolean support(String dataType, String operationType) {
return false;
}
/**
* 处理数据
*
* @param task 任务,注意不要对该对象改动
* @return 处理结果,注意长度必须等于 batchList.size 否则认为部分处理失败
*/
List handle(BatchDataSlice task);
/*List extends DataItem> dataList = task.getBatchList();
List resultList = new LinkedList<>();
for (DataItem dataItem : dataList) {
ImportRecordDetail result = new ImportRecordDetail();
result.setIndex(dataItem.getIndex());
// doing process 如保存 db 等
result.setResult(BatchResultEnum.IMPORT_SUCCESS.getCode());
resultList.add(result);
}
return resultList;*/
}