Exemple #1
0
        public UpdateProcessViewModel(
            INavigationManager navigation,
            UpdateConfiguration configuration,
            IMySQLProvider mySQLProvider,
            IApplicationInfo applicationInfo,
            ParametersService parametersService,
            IInteractiveService interactive,
            IGuiDispatcher guiDispatcher) : base(navigation)
        {
            this.configuration     = configuration ?? throw new ArgumentNullException(nameof(configuration));
            SQLProvider            = mySQLProvider;
            this.applicationInfo   = applicationInfo ?? throw new ArgumentNullException(nameof(applicationInfo));
            this.parametersService = parametersService ?? throw new ArgumentNullException(nameof(parametersService));
            this.interactive       = interactive ?? throw new ArgumentNullException(nameof(interactive));
            this.guiDispatcher     = guiDispatcher ?? throw new ArgumentNullException(nameof(guiDispatcher));

            FileName = System.IO.Path.Combine(
                Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments),
                "Резервные копии",
                String.Format("{0}{1:yyMMdd-HHmm}.sql", applicationInfo.ProductName, DateTime.Now)
                );

            IsModal = true;

            //FIXME Здесь проверка micro_updates оставлена для совместимости и возможности корректного обновления со старых версий программ. Удаление сделает невозможным начать обновление с установленного микроапдейта.
            dbVersion = this.parametersService.micro_updates != null?this.parametersService.micro_updates(typeof(Version)) : this.parametersService.version(typeof(Version));

            hops  = configuration.GetHopsToLast(dbVersion).ToArray();
            Title = String.Format("Обновление: {0} → {1}",
                                  dbVersion.VersionToShortString(),
                                  hops.Last().Destination.VersionToShortString());
        }
        public UpdateProcessViewModel(
            INavigationManager navigation,
            UpdateConfiguration configuration,
            IMySQLProvider mySQLProvider,
            IApplicationInfo applicationInfo,
            ParametersService parametersService,
            IInteractiveService interactive,
            IGuiDispatcher guiDispatcher) : base(navigation)
        {
            this.configuration     = configuration ?? throw new ArgumentNullException(nameof(configuration));
            SQLProvider            = mySQLProvider;
            this.applicationInfo   = applicationInfo ?? throw new ArgumentNullException(nameof(applicationInfo));
            this.parametersService = parametersService ?? throw new ArgumentNullException(nameof(parametersService));
            this.interactive       = interactive ?? throw new ArgumentNullException(nameof(interactive));
            this.guiDispatcher     = guiDispatcher ?? throw new ArgumentNullException(nameof(guiDispatcher));

            FileName = System.IO.Path.Combine(
                Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments),
                "Резервные копии",
                String.Format("{0}{1:yyMMdd-HHmm}.sql", applicationInfo.ProductName, DateTime.Now)
                );

            IsModal = true;

            dbVersion = GetCurrentDBVersion();
            hops      = configuration.GetHopsToLast(dbVersion).ToArray();
            Title     = String.Format("Обновление: {0} → {1}",
                                      dbVersion.VersionToShortString(),
                                      hops.Last().Destination.VersionToShortString());
        }
Exemple #3
0
 public MySQLUserRepository(IMySQLProvider mysqlProvider, IInteractiveService interactiveService)
 {
     this.mysqlProvider      = mysqlProvider ?? throw new ArgumentNullException(nameof(mysqlProvider));
     this.interactiveService = interactiveService ?? throw new ArgumentNullException(nameof(interactiveService));
 }