Example #1
0
        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);
                    }
                }
            }
        }
Example #2
0
        /// <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);
            }
        }
Example #3
0
        /// <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);
        }
Example #4
0
        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));
                }
            }
        }
Example #5
0
 public Tuple <string, string> OpenDmsLookup(DmsLookupViewModel dmsLookupViewModel)
 {
     DmsLookupViewModel = dmsLookupViewModel;
     DmsLookupOpened    = true;
     return(new Tuple <string, string>(_filePath, _filePath));
 }