com.kuangkie.carbon.fg.FirstRoundImproveFuncGroup Maven / Gradle / Ivy
package com.kuangkie.carbon.fg;
import com.kuangkie.carbon.fg.ops.FGOpsComplexus;
import com.kuangkie.carbon.fg.ops.ProRecordOps;
import com.kuangkie.carbon.record.FGRecordComplexus;
import com.kuangkie.carbon.record.ProRecord;
/**
*
* @version: V1.0
*
* @author: wangnq
*
* @className: FirstRoundImproveFuncGroup
*
* @packageName: cho.carbon.fuse.fg
*
* @description: 融合第一周期调用的接口
*
* @data: 2020年8月12日
*
*
*/
public interface FirstRoundImproveFuncGroup extends FunctionGroup {
/**
*
* @methodsName: preImprove
*
* @description: 预处理方法
*
* @param context:融合上下文
* @param proRecord:需要融合的实例
* @param opsComplexus:有变化的模型属性数据集
* @param recordComplexus:系统现存数据的集合。只包含本次融合可能相关的数据。
* @param improveResultFactory 需要修改的属性或新生成的实例
*
*/
public void preImprove(final FuncGroupContext context,final ProRecord proRecord,final ProRecordOps proRecordOps,final FGRecordComplexus recordComplexus,final FGOpsComplexus opsComplexus,
final ImproveResultFactory improveResultFactory);
/**
*
* @methodsName: improve
*
* @description:首次更新方法
*
* @param context:融合上下文
* @param proRecord:需要融合的实例
* @param recordComplexus:经过preImprove之后的最新实例集。合并了原有实例属性+提交的实例属性+preImprove返回的实例属性。
* @param improveResultFactory 需要修改的属性或新生成的实例
*
*/
public void improve(final FuncGroupContext context, final ProRecord proRecord,
final FGRecordComplexus recordComplexus, ImproveResultFactory improveResultFactory);
/**
*
* @methodsName: postImprove
*
* @description: 二次更新方法
*
* @param context:融合上下文
* @param proRecord:需要融合的实例
* @param recordComplexus:经过improve之后的最新实例集。improve的FGRecordComplexus+improve返回的实例属性。
* @param improveResultFactory 需要修改的属性或新生成的实例
*
*/
public void postImprove(final FuncGroupContext context,final ProRecord proRecord,final FGRecordComplexus recordComplexus,
final ImproveResultFactory improveResultFactory);
}