DbMigration.cs 993 B

1234567891011121314151617181920212223242526272829303132
  1. using System.Threading.Tasks;
  2. using MediaBrowser.Common.ScheduledTasks;
  3. using MediaBrowser.Controller.Configuration;
  4. using MediaBrowser.Server.Implementations.Persistence;
  5. namespace MediaBrowser.Server.Startup.Common.Migrations
  6. {
  7. public class DbMigration : IVersionMigration
  8. {
  9. private readonly IServerConfigurationManager _config;
  10. private readonly ITaskManager _taskManager;
  11. public DbMigration(IServerConfigurationManager config, ITaskManager taskManager)
  12. {
  13. _config = config;
  14. _taskManager = taskManager;
  15. }
  16. public void Run()
  17. {
  18. if (_config.Configuration.MigrationVersion < CleanDatabaseScheduledTask.MigrationVersion)
  19. {
  20. Task.Run(async () =>
  21. {
  22. await Task.Delay(2000).ConfigureAwait(false);
  23. _taskManager.QueueScheduledTask<CleanDatabaseScheduledTask>();
  24. });
  25. }
  26. }
  27. }
  28. }