All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.kuangkie.carbon.fg.IdentityQueryFuncGroup Maven / Gradle / Ivy

The newest version!
package com.kuangkie.carbon.fg;

import com.kuangkie.carbon.record.FGRecordComplexus;
import com.kuangkie.carbon.record.ProRecord;
import com.kuangkie.carbon.record.criteria.ConJunctionFactory;

/**
 * 
 * @version: V1.0
 * 
 * @author: wangnq
 * 
 * @className: IdentityQueryFuncGroup
 * 
 * @packageName: cho.carbon.fuse.fg
 * 
 * @description: 此接口辅助融合控制器识别待待融合记录在数据库中同一记录。
 *               融合器会在融合第一周期触发前调用此接口的方法,从数据库中识别出将被融合更新模型记录。
 *               如果模型不实现此接口,融合控制器会更具待融合记录的Code识别。如果控制器没有从数据库中识别出同一记录,控制器会创建一个新的记录用于融合更新。
 * 
 * @data: 2020年8月12日
 * 
 *
 */
public interface IdentityQueryFuncGroup {

	/**
	 * 
	 * @methodsName: buildConJunction
	 *
	 * @description: 控制器根据记录编码没有识别到相应记录或跳过了上述识别过程,此方法会被调用,控制器会根据返回结果,去数据库中查询相关数据。若返回null,控制器会跳过数据库查询步骤,直接认定为待融合记录尚没有同一记录。
	 *               返回结果集合中包含多个过滤条件时,控制器会用并且(and)连接它们。
	 *
	 * @param context
	 * @param recordCode:当前待识别记录的唯一编码。
	 * @param complexus:待融合记录的容器
	 * @return 返回过滤条件的集合
	 *
	 */
	public void buildConJunction(FuncGroupContext context, ProRecord proRecord,
			FGRecordComplexus recordComplexus,ConJunctionFactory conJunctionFactory);

	/**
	 * 
	 * @methodsName: runningAfterCodeQuery
	 *
	 * @description: 在识别同一记录时调用此方法。若返回true,控制器会先根据待融合记录中的记录编码去数据库中识别记录。若返回false,控制器会跳过根据待融合记录中的记录编码去数据库中识别记录。
	 *
	 * @return
	 *
	 */
	public default boolean runningAfterCodeQuery() {
		return true;
	};

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy