Пример #1
0
        internal void AddRipGrepOutput(string output)
        {
            var file = output.Split(":".ToCharArray(), 2);

            if (file.Length != 1 && file.Length != 2)
            {
                return;
            }

            file[0] = System.IO.Path.Combine(BasePath, file[0]);

            ResultFileModel resultFile = null;

            if (!Files.TryGetValue(file[0], out resultFile))
            {
                resultFile = new ResultFileModel(this, file[0]);
                Files.Add(file[0], resultFile);
                ResultFiles.Add(resultFile);
            }

            if (file.Length == 2)
            {
                resultFile.AddRipGrepOutput(file[1]);
            }
        }
Пример #2
0
        public override void Run()
        {
            var allLines = ResultFiles.SelectMany(file => File.ReadLines(file).ToCsvDictionary('\t')
                                                  .Select(i => new { UserId = i["UserId"], ItemId = i["ItemId"], Score = i["Score"], IsCorrect = i["IsCorrect"], File = file.GetFileName() }));

            var output = allLines.GroupBy(i => new { i.UserId, i.ItemId }).Select(g =>
                                                                                  string.Format("{0}\t{1}\t{2}", g.Key.UserId, g.Key.ItemId,
                                                                                                g.Select(a => string.Format("{0}\t{1}\t{2}", a.Score, a.IsCorrect, a.File))
                                                                                                .Aggregate((a, b) => a + "\t" + b)));

            File.WriteAllLines(OutputFile, output);
        }
Пример #3
0
        private void InitMisc()
        {
            if (MeasDate == null)
            {
                MeasDate = new DateTimeOffset(DateTime.Now);
            }


            countresults = new CountingResults();
            cycles       = new CycleList();
            Messages     = new AnalysisMessages();
            cyclestatus  = new MeasurementCycleStatusCounts();
            ResultsFiles = new ResultFiles();
        }
Пример #4
0
        // Search button is pressed => Return all the .docx files in the given directory for result panel
        public bool ReturnFiles()
        {
            bool directoryValid = false;

            // Validate input
            if (string.IsNullOrEmpty(Path))
            {
                MessageBox.Show("Path cannot be empty", "Empty directory path");
                return(directoryValid);
            }

            // Get files
            try
            {
                // Search the directory for document files
                MultiFileSearch multiSearch = new MultiFileSearch();
                multiSearch.InitialiseFiles(Path);
                ResultFiles       = multiSearch.GetFileNames();
                ResultDirectories = multiSearch.GetDirectoryNames();
            }
            catch (Exception criticalError)
            {
                MessageBox.Show("Could not perform file search.\n\n Error Message: " + criticalError, "Critical error");
                return(directoryValid);
            }

            // Check if search results returned any .docx files
            if (ResultFiles.Any())
            {
                directoryValid = true;
            }
            else
            {
                MessageBox.Show("There aren't any documents in this folder. \nDid you input the correct directory?", "No files found");
            }
            return(directoryValid);
        }
Пример #5
0
 private string GetMainFilePath(ResultFiles files, AssaySelector.MeasurementOption mo, bool elide)
 {
     string res = string.Empty;
     switch (mo)
     {
     case AssaySelector.MeasurementOption.unspecified:
         res = files.CSVResultsFileName.Path;
         break;
     default:
         res = files.PrimaryINCC5Filename.Path;
         break;
     }
     if (elide)
         res = Path.GetFileName(res);
     return res;
 }