public int StartProcess(SourceFolderSettings settings) { int numberofFilesProcessed = 0; //Get all valid files paths from the source folder var filePaths = _folderManager.GetAllFiles(settings.Path, settings.FileFormat.Ext, settings.FileTypes); try { foreach (string filePath in filePaths) { var response = _dataProcessor.GetMedianVariance(filePath, settings); if (response != null) { numberofFilesProcessed++; } //print now and move to next file. _outputService.OutputResult(response); } } catch (Exception) { // Yell Log Catch Throw } return(numberofFilesProcessed); }