Example #1
0
 public void OnItemStarted(int itemNumber, object item, TimeSpan materializationDuration, ITaskStep step, TaskDefinition task)
 {
     ItemStarted?.Invoke(new ItemStartedEvent
     {
         ItemNumber = itemNumber,
         Item       = item,
         MaterializationDuration = materializationDuration,
         Step      = step,
         Task      = task,
         Timestamp = DateTimeUtils.Now
     });
 }
Example #2
0
 internal void OnItemStarted(TrackItem sender, TimingEventArgs e)
 {
     ItemStarted?.Invoke(sender, e);
     Console.WriteLine($"Item Started => {sender.Text}");
 }
Example #3
0
        void worker_ProgressChanged(object sender, ProgressChangedEventArgs e)
        {
            if (e.UserState is UnpackStatus)
            {
                string message = null;
                if (e.UserState is QueueStarted)
                {
                    message = "Started unpacking items in queue.";
                }
                else if (e.UserState is QueueCompleted)
                {
                    message = "Unpacking of all queued items is completed";
                }
                else if (e.UserState is QueueCanceled)
                {
                    message = "Unpacking canceled";
                }
                else if (e.UserState is QueueProgressChanged)
                {
                    QueueProgressChanged queueProgressChanged = e.UserState as QueueProgressChanged;
                    EditQueueInfo(queueProgressChanged);
                }
                else if (e.UserState is ItemAdded)
                {
                    ItemAdded itemAdded = e.UserState as ItemAdded;
                    SetItemsLeft(itemAdded.ItemsInQueue);
                    message = string.Format("Added item \"{0}\"", GetFileName(itemAdded.Item));
                    EditItemQueueListBox(itemAdded.Item, "Idle");
                }
                else if (e.UserState is ItemStarted)
                {
                    ItemStarted itemStarted = e.UserState as ItemStarted;
                    message = string.Format("Unpacking of item \"{0}\" started", GetFileName(itemStarted.Item));
                    EditItemQueueListBox(itemStarted.Item, "Unpackning (0%)");
                }
                else if (e.UserState is ItemProgressChanged)
                {
                    ItemProgressChanged itemProgressChanged = e.UserState as ItemProgressChanged;
                    EditItemQueueListBox(itemProgressChanged.Item, string.Format("Unpacking ({0}% {1})",
                                                                                 itemProgressChanged.PercentCompleted, ConvertEta(itemProgressChanged.Eta)));
                }
                else if (e.UserState is ItemCompleted)
                {
                    ItemCompleted itemCompleted = e.UserState as ItemCompleted;
                    SetItemsLeft(itemCompleted.ItemsLeftInQueue);
                    message = string.Format("Unpacking of item \"{0}\" completed", GetFileName(itemCompleted.Item));
                    EditItemQueueListBox(itemCompleted.Item, "Completed");
                }
                else if (e.UserState is UnpackerError)
                {
                    UnpackerError unpackerError = e.UserState as UnpackerError;
                    message = string.Format("Error unpacking item: {0}", unpackerError.ErrorMessage);
                    EditItemQueueListBox(unpackerError.Item, string.Format("Error: {0}", unpackerError.ErrorMessage));
                }

                UpdateStatus(message);
            }
            else if (e.UserState is string)
            {
                UpdateUnpackerOutput(e.UserState as string);
            }
        }