public IDataProcess GetOneInstance(string name, bool isAddToList = true, bool newOne = false, bool isAddUI = false) { if (newOne) { var process = PluginProvider.GetObjectByType <IDataProcess>(name); if (process != null) { if (isAddToList) { ProcessCollection.Add(process); process.SysDataManager = dataManager; process.SysProcessManager = this; var rc4 = process as AbstractProcessMethod; if (rc4 != null) { rc4.MainPluginLocation = MainFrmUI.MainPluginLocation; rc4.MainFrm = MainFrmUI; } XLogSys.Print.Info("已经成功添加" + process.TypeName + "到当前列表"); } if (isAddUI) { ControlExtended.UIInvoke(() => LoadProcessView(process)); ControlExtended.UIInvoke(() => ShowConfigUI(process)); } return(process); } } return(ProcessCollection.Get(name, isAddToList)); }
public IDataProcess GetOneInstance(string name, bool isAddToList = true, bool newOne = false, bool isAddUI = false) { if (newOne) { var process = PluginProvider.GetObjectByType <IDataProcess>(name); if (process != null) { if (isAddToList) { ; process.SysDataManager = dataManager; process.SysProcessManager = this; var rc4 = process as AbstractProcessMethod; if (rc4 != null) { rc4.MainPluginLocation = MainFrmUI.MainPluginLocation; rc4.MainFrm = MainFrmUI; } var names = CurrentProcessCollections.Select(d => d.Name); var count = names.Count(d => d.Contains(process.TypeName)); if (count > 0) { process.Name = process.TypeName + (count + 1); } CurrentProcessCollections.Add(process); XLogSys.Print.Info(GlobalHelper.Get("key_319") + process.TypeName + GlobalHelper.Get("key_320")); } if (isAddUI) { ControlExtended.UIInvoke(() => LoadProcessView(process)); } return(process); } } return(ProcessCollection.Get(name, isAddToList)); }