package com.ctrip.platform.dal.dao.task; import java.sql.SQLException; import java.util.List; import java.util.Map; import com.ctrip.platform.dal.dao.DalHints; public interface BulkTask<K, T> extends DaoTask<T> { K getEmptyValue(); BulkTaskContext<T> createTaskContext(DalHints hints, List<Map<String, ?>> daoPojos, List<T> rawPojos) throws SQLException; K execute(DalHints hints, Map<Integer, Map<String, ?>> shaffled, BulkTaskContext<T> taskContext) throws SQLException; //Merger factory, always return a new merger instance BulkTaskResultMerger<K> createMerger(); }