Exemple #1
0
        public MainViewModel(
            IAmalgamationManagementService iAmalgamationManagementService,
            IMessengerService messengerService,
            IWindowService windowService,
            IDialogInteractionService dialogInteractionService,
            IWindowsProcessService windowsProcessService,
            ISettingsService settingsService,
            ILogger logger)
        {
            _amalgamationManagementService = iAmalgamationManagementService;
            _messengerService         = messengerService;
            _windowService            = windowService;
            _dialogInteractionService = dialogInteractionService;
            _messengerService.Register <TaskProgressMessage>(this, HandleTaskProgressMessage);
            _messengerService.Register <AmalgamationSummary>(this, x => AmalgamationSummary = x);
            _windowsProcessService = windowsProcessService;
            _settingsService       = settingsService;
            _logger = logger;

            ChooseFileCommand         = new RelayCommand(ShowChooseFileDialog);
            AmalgamateFilesCommand    = new AsyncCommand(AmalgamateFiles, () => CanMerge);
            OutputDirectoryCommand    = new RelayCommand(() => ProcessStart(OutputDirectory));
            SettingsNavigationCommand = new RelayCommand(SettingsNavigate);
            AboutNavigationCommand    = new RelayCommand(AboutNavigate);
            RemoveFileCommand         = new RelayCommand <object>(RemoveFile);

            MergeAnotherSetOfFilesCommand = new RelayCommand(() => CurrentStage = StageKeys.ChooseFile);
            CancelCommand = new RelayCommand(Cancel, () => (CurrentStage == StageKeys.Processing) && (!_cancellationTokenSource?.IsCancellationRequested ?? false));
        }
Exemple #2
0
 private MainViewModel NewViewModel(
     IIlrDesktopService ilrDesktopService         = null,
     IDesktopContextFactory desktopContextFactory = null,
     IMessengerService messengerService           = null,
     IWindowService windowService = null,
     IDialogInteractionService dialogInteractionService          = null,
     IWindowsProcessService windowsProcessService                = null,
     IReleaseVersionInformationService versionInformationService = null,
     IReferenceDataVersionInformationService referenceDataVersionInformationService = null,
     ILogger logger = null,
     IFeatureSwitchService featureSwitchService     = null,
     IVersionMediatorService versionMediatorService = null,
     IDesktopReferenceDataDownloadService desktopReferenceDataDownloadService = null)
 {
     return(new MainViewModel(
                ilrDesktopService ?? Mock.Of <IIlrDesktopService>(),
                desktopContextFactory ?? Mock.Of <IDesktopContextFactory>(),
                messengerService ?? Mock.Of <IMessengerService>(),
                windowService ?? Mock.Of <IWindowService>(),
                dialogInteractionService ?? Mock.Of <IDialogInteractionService>(),
                windowsProcessService ?? Mock.Of <IWindowsProcessService>(),
                versionInformationService ?? Mock.Of <IReleaseVersionInformationService>(),
                referenceDataVersionInformationService ?? Mock.Of <IReferenceDataVersionInformationService>(),
                logger ?? Mock.Of <ILogger>(),
                featureSwitchService ?? Mock.Of <IFeatureSwitchService>(),
                versionMediatorService ?? Mock.Of <IVersionMediatorService>(),
                desktopReferenceDataDownloadService ?? Mock.Of <IDesktopReferenceDataDownloadService>()));
 }
Exemple #3
0
        public MainViewModel(
            IIlrDesktopService ilrDesktopService,
            IDesktopContextFactory desktopContextFactory,
            IMessengerService messengerService,
            IWindowService windowService,
            IDialogInteractionService dialogInteractionService,
            IWindowsProcessService windowsProcessService,
            IReleaseVersionInformationService versionInformationService,
            IReferenceDataVersionInformationService refDataVersionInformationService,
            ILogger logger,
            IFeatureSwitchService featureSwitchService,
            IVersionMediatorService versionMediatorService,
            IDesktopReferenceDataDownloadService desktopReferenceDataDownloadService)
        {
            _ilrDesktopService         = ilrDesktopService;
            _desktopContextFactory     = desktopContextFactory;
            _windowService             = windowService;
            _dialogInteractionService  = dialogInteractionService;
            _windowsProcessService     = windowsProcessService;
            _versionInformationService = versionInformationService;
            _logger = logger;
            _featureSwitchService                = featureSwitchService;
            _versionMediatorService              = versionMediatorService;
            _refDataVersionInformationService    = refDataVersionInformationService;
            _desktopReferenceDataDownloadService = desktopReferenceDataDownloadService;
            _referenceDataVersionNumber          = _refDataVersionInformationService.VersionNumber;

            messengerService.Register <TaskProgressMessage>(this, HandleTaskProgressMessage);

            CheckForUpdateCommand     = new AsyncCommand(CheckForNewVersion, CanCheckForNewVersion);
            CheckForUpdateMenuCommand = new AsyncCommand(CheckForNewVersionFromMenu, CanCheckForNewVersion);

            ChooseFileCommand              = new RelayCommand(ShowChooseFileDialog);
            ProcessFileCommand             = new AsyncCommand(ProcessFile, () => CanSubmit);
            SettingsNavigationCommand      = new RelayCommand(SettingsNavigate);
            AboutNavigationCommand         = new RelayCommand(AboutNavigate);
            ReportFiltersNavigationCommand = new RelayCommand(ReportFiltersNavigate);
            ReportsFolderCommand           = new RelayCommand(() => ProcessStart(_reportsLocation));
            CancelAndReImportCommand       = new RelayCommand(CancelAndReImport, () => !_cancellationTokenSource?.IsCancellationRequested ?? false);
            VersionNavigationCommand       = new RelayCommand(NavigateToVersionsUrl);
            ReferenceDataDownloadCommand   = new AsyncCommand(DownloadReferenceData);
        }