private async void SearchDms() { var dmsLookupViewModel = new DmsLookupViewModel { OutputDirectory = this.outputDirectory }; var dialog = new DmsLookupView { DataContext = dmsLookupViewModel }; dmsLookupViewModel.DatasetSelected += (o, e) => dialog.Close(); dialog.ShowDialog(); if (!dmsLookupViewModel.Status) { return; } if (dmsLookupViewModel.ShouldCopyFiles) { this.InputFilePath = dmsLookupViewModel.OutputDirectory; this.AddFolderCommand.Execute(null); } else { foreach (var dataset in dmsLookupViewModel.Datasets) { var filePaths = dataset.GetAvailableFiles(); if (filePaths.Count > 0) { await this.AddDatasets(filePaths); } } } }
/// <summary> /// Implementation for <see cref="OpenFromDmsCommand" />. /// Prompts the user for a dataset and job name from the PNNL DMS system. /// </summary> /// <returns>Task that opens a data set from DMS and adds it to the data set list.</returns> private async Task OpenFromDmsImplementation() { var dmsLookUp = new DmsLookupViewModel(this.dialogService); this.dialogService.OpenDmsLookup(dmsLookUp); if (!dmsLookUp.ValidateDataSet() || !dmsLookUp.Status) { return; // data set was not chosen } try { var rawFilePaths = dmsLookUp.GetRawFileNames(); var idFilePath = dmsLookUp.GetIdFileName(); var featureFilePath = dmsLookUp.GetFeatureFileName(); foreach (var file in rawFilePaths) { var dataSetViewModel = await this.ReadRawFile(file); if (dataSetViewModel.MsPfParameters == null) { dataSetViewModel.SetMsPfParameters(idFilePath); } // Set the dataset's FASTA file path if (dataSetViewModel.MsPfParameters != null) { dataSetViewModel.FastaDbFilePath = string.Format( "{0}\\{1}", DmsLookupViewModel.FastaFilePath, dataSetViewModel.MsPfParameters.DatabaseFile); } this.IdFileLoadProgress = 100; this.IdFileLoading = true; if (!string.IsNullOrWhiteSpace(dataSetViewModel.FastaDbFilePath) && File.Exists(dataSetViewModel.FastaDbFilePath)) { await this.ScanViewModel.IdTree.AddFastaEntriesAsync(await this.dataReader.ReadFastaFile(dataSetViewModel.FastaDbFilePath)); } await this.ReadIdFile(idFilePath, dataSetViewModel); await this.dataReader.OpenDataSet(dataSetViewModel, file, featureFilePath : featureFilePath); this.IdFileLoadProgress = 0; this.IdFileLoading = false; } } catch (Exception e) { this.dialogService.ExceptionAlert(e); } }
/// <summary> /// Open a dialog to search for a file on DMS. /// </summary> /// <param name="dmsLookupViewModel">The view model for the dialog.</param> /// <returns>The name of the data set and the name of the job selected.</returns> public Tuple <string, string> OpenDmsLookup(DmsLookupViewModel dmsLookupViewModel) { var dmsLookupDialog = new DmsLookupView { DataContext = dmsLookupViewModel }; dmsLookupViewModel.ReadyToClose += (o, e) => dmsLookupDialog.Close(); dmsLookupDialog.ShowDialog(); Tuple <string, string> data = null; if (dmsLookupViewModel.Status) { var dataSetFolderPath = (dmsLookupViewModel.SelectedDataset == null) ? string.Empty : dmsLookupViewModel.SelectedDataset.DatasetFolderPath; var jobFolderPath = (dmsLookupViewModel.SelectedJob == null) ? string.Empty : dmsLookupViewModel.SelectedJob.JobFolderPath; data = new Tuple <string, string>(dataSetFolderPath, jobFolderPath); } return(data); }
private void SearchDms() { var dmsLookupViewModel = new DmsLookupViewModel { OutputDirectory = this.outputDirectory }; var dialog = new DmsLookupView { DataContext = dmsLookupViewModel }; dmsLookupViewModel.DatasetSelected += (o, e) => dialog.Close(); dialog.ShowDialog(); if (!dmsLookupViewModel.Status) { return; } if (dmsLookupViewModel.ShouldCopyFiles) { this.InputFilePath = dmsLookupViewModel.OutputDirectory; this.AddFolderCommand.Execute(null); } else { var filePaths = dmsLookupViewModel.SelectedDataset.GetAvailableFiles(); if (filePaths.Count > 0) { this.AddDatasets(this.GetInputFilesFromPath(filePaths)); } } }
public Tuple <string, string> OpenDmsLookup(DmsLookupViewModel dmsLookupViewModel) { DmsLookupViewModel = dmsLookupViewModel; DmsLookupOpened = true; return(new Tuple <string, string>(_filePath, _filePath)); }