【仅供内部供应商使用,不提供对外解答和培训】
【仅供内部供应商使用,不提供对外解答和培训】
运行报表时的数据集加载接口,目前用来实现数据集的并行取数。
在报表即将被计算时会调用createDataSourcePool方法,计算到相应格子时会通过getDataModel取数。
/** * 用于打开模版或表单时加载数据集的接口 * Created by loy on 2016/12/12. */ public interface DataSourcePoolProcessor extends Immutable { String MARK_STRING = "DataSourcePoolProcessor"; /** * 创建并启动数据加载器,加载器实例保存在Calculator中 * @param ca Calculator类的holder对象,可以通过 new ObjectHolder(calculator) 来创建 * @param cellTableDataSet 模版中所用到的数据集名字 */ void createDataSourcePool(ObjectHolder ca, Set<String> cellTableDataSet); /** * 获取加载器加载的数据集 * @param ca Calculator类的holder对象,可以通过new ObjectHolder(calculator)来创建 * @param dsName 数据集名字 * @return DataModel对象的holder,通过holder.get(DataModel.class)来获取DataModel */ ObjectHolder getDataModel(ObjectHolder ca, String dsName); }
<extra-core> <DataSourcePoolProcessor class="com.fr.plugin.performance.datasourcepool.DataSourcePoolImpl"/> </extra-core>