using System; using System.Collections.Generic; using System.IO; using Aitex.Common.Util; using Aitex.Core.RT.Event; using Aitex.Core.RT.Log; using Aitex.Core.RT.RecipeCenter; namespace Aitex.Sorter.RT.Module.Recipe { public class RtRecipeFileContext : IRecipeFileContext { public string GetRecipeDefiniton(string chamberId) { return string.Empty; } public IEnumerable GetRecipes(string chamberId, bool includingUsedRecipe) { try { string recipePath = PathManager.GetRecipeDir() + chamberId + "\\"; var di = new DirectoryInfo(recipePath); if (!Directory.Exists(di.FullName)) return new List(); var fis = di.GetFiles("*.rcp", SearchOption.AllDirectories); var recipes = new List(); foreach (var fi in fis) { string str = fi.FullName.Substring(recipePath.Length); str = str.Substring(0, str.LastIndexOf('.')); if (includingUsedRecipe || !str.Contains("HistoryRecipe\\")) { recipes.Add(str); } } return recipes; } catch (Exception ex) { LOG.Write(ex); return new List(); } } public void PostEvent(string message) { EV.PostNotificationMessage(message); } public string GetRecipeTemplate(string chamberId) { return String.Empty; } public void PostInfoEvent(string message) { EV.PostMessage("System", EventEnum.GeneralInfo, message); } public void PostWarningEvent(string message) { EV.PostMessage("System", EventEnum.DefaultWarning, message); } public void PostAlarmEvent(string message) { EV.PostMessage("System", EventEnum.DefaultAlarm, message); } public void PostDialogEvent(string message) { EV.PostNotificationMessage(message); } public void PostInfoDialogMessage(string message) { EV.PostMessage("System", EventEnum.GeneralInfo, message); EV.PostPopDialogMessage(EventLevel.Information, "System Information", message); } public void PostWarningDialogMessage(string message) { EV.PostMessage("System", EventEnum.GeneralInfo, message); EV.PostPopDialogMessage(EventLevel.Warning, "System Warning", message); } public void PostAlarmDialogMessage(string message) { EV.PostMessage("System", EventEnum.GeneralInfo, message); EV.PostPopDialogMessage(EventLevel.Alarm, "System Alarm", message); } } }