public DataVIewer(SCHElement element) { InitializeComponent(); fastColoredTextBox1.Text = ""; this.element = element; if (element.Data.ActionType == ActionType.CSharpCode) { var refs = element.Data.GetCSharpRefs(new FileInfo(Application.ExecutablePath).DirectoryName + "Lib\\"); if (refs != null && refs.Length != 0) { fastColoredTextBox1.Text = "//==REFFERENES==\n"; fastColoredTextBox1.Text += "//" + string.Join("\n//", refs); fastColoredTextBox1.Text += "\n\n"; } fastColoredTextBox1.Text += element.Data.GetCSharpCode(); button_output.Visible = true; } else { button_output.Visible = false; fastColoredTextBox1.Text = element.Data.GetCMDScript(); } fastColoredTextBox1.ReadOnly = true; textBoxWidth = Width - fastColoredTextBox1.Width - fastColoredTextBox1.Left + 10; textBoxHeight = Height - fastColoredTextBox1.Height - fastColoredTextBox1.Top + button_close.Height - 30; buttonBotOffset = button_close.Height * 2 + 10; buttonLeftOffset = button_close.Width + 20; buttonOutTopOffset = button_close.Height * 2 + 10; buttonOutLeftOffset = buttonLeftOffset + 5 + button_output.Width; DataVIewer_SizeChanged(null, null); }
private void UIInfo(SCHElement element) { groupBox_info.Enabled = true; label_m_name.Text = string.Format("Name: {0}", element.Metadata.Name); label_m_descr.Text = string.Format("Description: {0}", element.Metadata.Description); label_m_autor.Text = string.Format("Autor: {0}", element.Metadata.Autor); label_m_crdate.Text = string.Format("CreationDate: {0}", element.Metadata.CreationDate.ToString()); label_d_acttype.Text = string.Format("Action Type: {0}", element.Data.ActionType); label_d_comdtype.Text = string.Format("Command Type: {0}", element.Data.CommandType); if (element.Data.CommandType == CommandType.OneTime) { label_d_reptype.Visible = false; tabControl_d.SelectedIndex = 0; label_d_onetimedate.Text = string.Format("One Time Date: {0}", element.Data.OneTimeDate); } else { label_d_reptype.Visible = true; label_d_reptype.Text = string.Format("Repeatable Type: {0}", element.Data.RepeatableType); if (element.Data.RepeatableType == RepeatableType.Monotonous) { label_d_rm_startTime.Text = string.Format("Start time: {0}", element.Data.MonotonousStartTime); label_d_rm_period.Text = string.Format("Period: {0}", element.Data.MonotonousPeriod); label_d_rm_count.Text = string.Format("Count: {0}", element.Data.MonotonousRepeatCount); tabControl_d.SelectedIndex = 1; } else { listBox_d_rs.Items.Clear(); listBox_d_rs.Items.AddRange(element.Data.SpecificDates.Select(p => p.ToString()).ToArray()); tabControl_d.SelectedIndex = 2; } } }
private void RunElement(SCHElement element) { try { element.Run(); } catch (Exception e) { Parameters.OnErrorAction?.Invoke(e, "Unable to run() element"); } }
public bool SendElement(SCHElement element) { try { byte[] bytes = element.ToBytes(); pipeClient.Write(bytes, 0, bytes.Length); return(true); } catch (Exception e) { ExMsg = e.Message; return(false); } }
static void Main(string[] args) { Logger logger = new Logger("AddTasks", "AddTasks"); logger.V("Staring app"); logger.I("Values " + string.Join(" ", args)); SCHElement element = null; try { element = ShellParser.Parse(args, SCHEnvironment.LibDir); logger.I("Parse has been ended"); } catch (Exception e) { logger.E("Parsing error"); logger.E(e.ToString()); Error(e.ToString()); return; } using (SchedulerClient client = new SchedulerClient()) { if (!client.Connect()) { Error("Unable to connect to server!"); logger.E("Unable to connect to server!"); logger.E(client.ExMsg); Error(client.ExMsg); return; } if (!client.SendElement(element)) { logger.E("Unable to send data"); logger.E(client.ExMsg); Error("Unable to send data!"); Error(client.ExMsg); return; } logger.I("OK!"); } }
public static SCHElement Parse(string[] args, string libDir) { var data = ParseData(args); SCHElement element = new SCHElement(); element.Metadata.Name = data.Name; element.Metadata.Autor = data.Autor ?? ""; element.Metadata.Description = data.Descr ?? ""; element.Metadata.CreationDate = DateTime.Now; element.Data.ActionType = data.AT; element.Data.CommandType = data.CT; element.Data.RepeatableType = data.RT; if (data.AT == ActionType.CMDScript) { element.Data.SetCMDScript(File.ReadAllText(data.FileName)); } else { element.Data.SetCSharpSource(data.Refs, File.ReadAllText(data.FileName), libDir); } if (data.CT == CommandType.OneTime) { element.Data.OneTimeDate = data.OTD; } else { if (data.RT == RepeatableType.Monotonous) { element.Data.MonotonousPeriod = (uint)data.MP; element.Data.MonotonousRepeatCount = (ushort)data.MRC; element.Data.MonotonousStartTime = data.MST; } else { element.Data.SpecificDates = data.SD; } } return(element); }