public WrkElement(DTODataServer work) { this.Work = work; InitializeComponent(); UpdateWrkElement(this.Work); }
public void UpdateWorkList(DTODataServer work) { if (workList.Count > 0) { Dispatcher.Invoke(() => { abortBtn.IsEnabled = true; }); Dispatcher.Invoke(() => { pauseBtn.IsEnabled = true; }); Dispatcher.Invoke(() => { resumeBtn.IsEnabled = true; }); } if (!workList.Any()) { workList.Add(work); Dispatcher.Invoke(() => { workElements.Add(new WrkElement(work)); WorkList.Items.Add(workElements[workElements.Count - 1]); workElements[workElements.Count - 1].UpdateWrkElement(work); }); return; } else { for (int i = 0; i < workList.Count; i++) { if (workList[i].Name == work.Name) { workList[i] = work; Dispatcher.Invoke(() => { workElements[i].UpdateWrkElement(work); }); return; } } workList.Add(work); Dispatcher.Invoke(() => { workElements.Add(new WrkElement(work)); WorkList.Items.Add(workElements[workElements.Count - 1]); workElements[workElements.Count - 1].UpdateWrkElement(work); }); return; } }
public void UpdateWrkElement(DTODataServer workItem) { this.Work = workItem; workNameLbl.Content = workItem.Name; workProgressBar.Value = Int16.Parse(workItem.Progress); workDuration.Content = workItem.Duration.ToString(); workEligibleSize.Content = workItem.EligibleFiles.ToString(); workEncryptDuration.Content = workItem.EncryptDuration.ToString(); workRemainingSize.Content = workItem.RemainingSize.ToString(); workSize.Content = workItem.Size.ToString(); //workTypeLbl.Content = workItem.TypeSave.ToString(); }
public void NotifyObserver(DTODataServer work) { try { foreach (Observer obs in obsList) { obs.UpdateWorkList(work); } } catch (Exception e) { Console.WriteLine("[-] An error occured while trying to notify the server: {0}", e); } }
public void Handle(byte[] packet, Socket clientSocket) { Monitor.Enter(tLock); try { Message msg = new Message(packet); DTODataServer dataServer = JsonSerializer.Deserialize <DTODataServer>(msg.Text); NotifyObserver(dataServer); } catch (Exception e) { Console.WriteLine("[-] {0}", e); } finally { Monitor.Exit(tLock); } }
public void PrintComponents(DTODataServer work) { }