Ejemplo n.º 1
0
 /// <summary>
 /// Handles process error event.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">Event data.</param>
 protected virtual void OnProcessError(object sender,
     ProcessErrorEventArgs e)
 {
     _logger.Log(_formatter.Format(e));
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Handles process error event.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">Event data.</param>
        /// <exception cref="ArgumentNullException">e is null.</exception>
        protected override void OnProcessError(object sender,
            ProcessErrorEventArgs e)
        {
            if (e == null)
            {
                throw new ArgumentNullException("e",
                                                Resources.ArgumentNullException);
            }

            base.OnProcessError(sender, e);
            IncreaseErrorCount(e.DaemonName);
            UpdateList(false);
            UpdateProcessesToRun(e.QueuedProcesses);
            UpdateRunningProcesses();
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Handles process error event.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">Event data.</param>
 protected virtual void OnProcessError(object sender,
     ProcessErrorEventArgs e)
 {
     AddLogMessage(_formatter.Format(e));
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Formats message.
 /// </summary>
 /// <param name="processErrorEventArgs">Message.</param>
 /// <returns>Formatted message.</returns>
 /// <exception cref="ArgumentNullException">processErrorEventArgs is null.</exception>
 public string Format(ProcessErrorEventArgs processErrorEventArgs)
 {
     if (processErrorEventArgs == null)
     {
         throw new ArgumentNullException("processErrorEventArgs",
                                         Resources.ArgumentNullException);
     }
     return String.Format(CultureInfo.CurrentCulture,
                          @Resources.MessageProcessError,
                          @DateTime.Now,
                          @Resources.MessageTypeError,
                          @processErrorEventArgs.DaemonName,
                          @processErrorEventArgs.Exception.Message);
 }
Ejemplo n.º 5
0
 /// <summary>
 /// Handles process error event.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">Event data.</param>
 private void OnProcessError(object sender,
                             ProcessErrorEventArgs e)
 {
     // Run threaded event in main thread.
     _synchronizationContext.Send(new SendOrPostCallback(delegate
     {
         EventHandler<ProcessErrorEventArgs> handler = ProcessError;
         if (handler != null)
         {
             handler(this, e);
         }
     }), null);
 }
Ejemplo n.º 6
0
        /// <summary>
        /// Raises process error event. Reduces process counts.
        /// </summary>
        /// <param name="exception">Exception that occured.</param>
        /// <param name="e">Event data.</param>
        private void RaiseProcessError(Exception exception,
                                       FileWatcherEventArgs e)
        {
            // Decrease external process counter.
            SetExternalProcessRunningOff();

            ProcessErrorEventArgs processErrorEventArgs =
                new ProcessErrorEventArgs(e.ConfigurationKeyValuePair.Key,
                                          exception,
                                          GetProcessQueueCount());
            OnProcessError(this,
                           processErrorEventArgs);

            // Remove available process from the file watcher.
            RemoveAvailableProcess(e.ConfigurationKeyValuePair.Key);

            // Decrease file watcher process count.
            RemoveProcessFromProcessBatchSize(e.ConfigurationKeyValuePair.Key);

            SetProcessRunningOff();
        }