protected virtual void OnFileHasProcessed(FileProcessedEventArgs args)
 {
     if (FileHasBeenProcessed != null)
     {
         FileHasBeenProcessed.Invoke(this, args);
     }
 }
예제 #2
0
        private void _RoboCommand_OnFileProcessed(object sender, FileProcessedEventArgs e)
        {
            BeginInvoke((Action)(() =>
            {
                if (e.ProcessedFile.FileClassType == FileClassType.SystemMessage)
                {
                    SystemMessage.Text = e.ProcessedFile.Name;
                }
                else
                {
                    CurrentFile.Text = e.ProcessedFile.FileClass + ": " + e.ProcessedFile.Name;

                    if (e.ProcessedFile.FileClassType == FileClassType.File)
                    {
                        CurrentSize.Text = Utilities.GetBytesReadable(e.ProcessedFile.Size);
                    }
                }

                if (e.ProcessedFile.FileClassType == FileClassType.File)
                {
                    FileCount++;
                    TotalFileSize += e.ProcessedFile.Size;
                }
            }));
        }
예제 #3
0
파일: RoboCommand.cs 프로젝트: imcf/auto-tx
        /// <summary>
        /// RoboSharp OnFileProcessed callback handler.
        ///
        /// NOTE: the handler is called on any NEW message produced by RoboCopy, in particular this
        /// also means that a "new file" event is triggered when the transfer of a new file is
        /// about TO START! Therefore the "OnFileProcessed" name is slightly misleading.
        /// </summary>
        private void RsFileProcessed(object sender, FileProcessedEventArgs e)
        {
            try {
                var processed = e.ProcessedFile;

                Log.Trace("RsFileProcessed (OnFileProcessed handler) triggered:  " +
                          "Class [{1}]  -  Size [{2}]  -  Name [{0}]",
                          e.ProcessedFile.Name, e.ProcessedFile.FileClass, e.ProcessedFile.Size);

                // WARNING: RoboSharp doesn't seem to offer a culture invariant representation
                // of the FileClass, so this might fail in non-english environments:
                if (processed.FileClass.ToLower().Equals("new file"))
                {
                    _transferredFiles.Add($"{processed.Name} ({Conv.BytesToString(processed.Size)})");
                    // reset the value for the amount of bytes transferred for the current file:
                    _status.TransferredBytesCurrentFile = 0;
                    // now add _txCurFileSize (containing either the size of the previously
                    // transferred file or 0 in case this is the first file of a new transfer) to
                    // the total amount of already transferred bytes:
                    _status.TransferredBytesCompleted += _txCurFileSize;
                    // finally we can now update the _txCurFileSize variable:
                    _txCurFileSize = processed.Size;
                    Log.Trace("++++ new file transfer started: size [{0}], already transferred [{1}] ++++",
                              _txCurFileSize, _status.TransferredBytesCompleted);
                }
            }
            catch (Exception ex) {
                Log.Error("Error in RsFileProcessed(): {0}", ex.Message);
            }
        }
예제 #4
0
 void copy_OnFileProcessed(object sender, FileProcessedEventArgs e)
 {
     Dispatcher.BeginInvoke((Action)(() =>
     {
         CurrentOperation.Text = e.ProcessedFile.FileClass;
         CurrentFile.Text = e.ProcessedFile.Name;
         CurrentSize.Text = e.ProcessedFile.Size.ToString();
     }));
 }
예제 #5
0
파일: Facade.cs 프로젝트: Dloz/EpamTasks
        private void FileProcessed(object sender, FileProcessedEventArgs e)
        {
            var saleDataToSave = new List <Sale>();

            foreach (var sale in e.Sales)
            {
                var saleDto = _mapper.Map <SaleDto>(sale);
                if (_saleService.IsSaleValid(saleDto))
                {
                    saleDataToSave.Add(_mapper.Map <Sale>(saleDto));
                }
                else
                {
                    return;
                }
            }

            _saleUnitOfWork.Add(saleDataToSave.ToArray());
        }
예제 #6
0
        /// <summary>
        /// Event that is called whenever a file is copied
        /// This provides status
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void rbc_OnFileProcessed(object sender, FileProcessedEventArgs e)
        {
            switch (e.ProcessedFile.FileClass)
            {
            case "System Message":
                Console.WriteLine(e.ProcessedFile.Name);
                break;

            case "New Dir":
                Console.WriteLine(e.ProcessedFile.Name);
                break;

            case "New File":
                Console.WriteLine("");
                Console.Write("Copying " + e.ProcessedFile.Name);
                break;

            default:
                break;
            }
        }
예제 #7
0
 private void OnFileProcessed(object sender, FileProcessedEventArgs e)
 {
     //_logger.InfoFormat("[{0}] - Copy ApplicationSite InProgress: {1}, {2}, {3}.", MethodInfo.GetCurrentMethod().Name, e.ProcessedFile.FileClass, e.ProcessedFile.Name, e.ProcessedFile.Size);
 }
예제 #8
0
파일: FolderSync.cs 프로젝트: cocoon/Toems
 void backup_OnFileProcessed(object sender, FileProcessedEventArgs e)
 {
     Logger.Info(e.ProcessedFile.FileClass);
     Logger.Info(e.ProcessedFile.Name);
     Logger.Info(e.ProcessedFile.Size.ToString());
 }
예제 #9
0
 void backup_OnFileProcessed(object sender, FileProcessedEventArgs e)
 {
     //Console.WriteLine(e.ProcessedFile.FileClass);
     Console.WriteLine(e.ProcessedFile.Name);
     //Console.WriteLine(e.ProcessedFile.Size.ToString());
 }
예제 #10
0
파일: Facade.cs 프로젝트: Dloz/EpamTasks
 private void OnFileProcessedEvent(object sender, FileProcessedEventArgs e)
 {
     FileProcessedEvent?.Invoke(sender, e);
 }
예제 #11
0
 void copy_OnFileProcessed(object sender, FileProcessedEventArgs e)
 {
     Dispatcher.BeginInvoke((Action)(() =>
     {
         CurrentOperation.Text = e.ProcessedFile.FileClass;
         CurrentFile.Text = e.ProcessedFile.Name;
         CurrentSize.Text = e.ProcessedFile.Size.ToString();
     }));
 }