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

net.ibizsys.model.util.merger.IPSModelMergeContext Maven / Gradle / Ivy

There is a newer version: 8.1.0.559
Show newest version
package net.ibizsys.model.util.merger;


/**
 * 模型合并上下文
 * @author lionlau
 *
 */
public interface IPSModelMergeContext {

	String getPSModelFolderPath();
	
	
	String getMergePSModelFolderPath();
	
	
	String getDstPSModelFolderPath();
	
	
	String getPSModelTagField(Class cls);
	
	/**
	 * 是否支持合并指定类型成员
	 * @param cls
	 * @return
	 */
	Boolean isEnableMergeChild(Class cls);
	
	
	/**
	 * 是否支持合并指定类型
	 * @param cls
	 * @return
	 */
	Boolean isAppendChildOnly(Class cls);
	
	
	/**
	 * 是否支持合并指定类型成员
	 * @param cls
	 * @param strFieldName
	 * @return
	 */
	Boolean isEnableMergeChild(Class cls, String strFieldName);
	
	
	/**
	 * 是否支持合并指定类型成员
	 * @param cls
	 * @return
	 */
	Boolean isEnableMergeSingle(Class cls);
	
	/**
	 * 获取参数
	 * @param strKey
	 * @return
	 */
	Object getParam(String strKey);
	
	
	/**
	 * 设置参数
	 * @param strKey
	 * @param objValue
	 */
	void setParam(String strKey, Object objValue);
	
	
	
	/**
	 * 获取模型合并器
	 * @param cls
	 * @param bTryMode
	 * @return
	 * @throws Exception
	 */
	IPSModelMerger getPSModelMerger(Class cls, boolean bTryMode) throws Exception;
	
	/**
	 * 获取模型列表合并器
	 * @param cls
	 * @param bTryMode
	 * @return
	 * @throws Exception
	 */
	IPSModelListMerger getPSModelListMerger(Class cls, boolean bTryMode) throws Exception;
	
	
	
	/**
	 * 记录合并
	 * @param object
	 * @param strFieldName
	 * @return
	 */
	boolean logMerge(Object object, String strFieldName);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy