/// <summary>
        /// Called when [changed event fire].
        /// </summary>
        /// <param name="source">The source.</param>
        /// <param name="e">The <see cref="FileSystemEventArgs"/> instance containing the event data.</param>
        private async void OnChanged(object source, FileSystemEventArgs e)
        {
            try
            {
                _iLog.Info("Recived the file into incoming folder.");

                bool isFileProcessed = false;
                var  isReady         = false;
                while (!isReady)
                {
                    isReady = FileWatcherHelper.IsFileReady(e.FullPath);
                    if (isReady)
                    {
                        isFileProcessed = await _fileProcessor.IsProcessed(e.FullPath);

                        break;
                    }
                }
                if (isFileProcessed)
                {
                    _iLog.Info("Report generated successfully!!");
                }
            }
            catch (Exception ex)
            {
                _iLog.Error($"Error while processing the file. Error: {ex.Message}");
            }
        }