FileOrganizationService.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. using MediaBrowser.Common.ScheduledTasks;
  2. using MediaBrowser.Controller.FileOrganization;
  3. using MediaBrowser.Controller.Persistence;
  4. using MediaBrowser.Model.FileOrganization;
  5. using MediaBrowser.Model.Querying;
  6. using System.Threading;
  7. using System.Threading.Tasks;
  8. namespace MediaBrowser.Server.Implementations.FileOrganization
  9. {
  10. public class FileOrganizationService : IFileOrganizationService
  11. {
  12. private readonly ITaskManager _taskManager;
  13. private readonly IFileOrganizationRepository _repo;
  14. public FileOrganizationService(ITaskManager taskManager, IFileOrganizationRepository repo)
  15. {
  16. _taskManager = taskManager;
  17. _repo = repo;
  18. }
  19. public void BeginProcessNewFiles()
  20. {
  21. _taskManager.CancelIfRunningAndQueue<OrganizerScheduledTask>();
  22. }
  23. public Task SaveResult(FileOrganizationResult result, CancellationToken cancellationToken)
  24. {
  25. return _repo.SaveResult(result, cancellationToken);
  26. }
  27. public QueryResult<FileOrganizationResult> GetResults(FileOrganizationResultQuery query)
  28. {
  29. return _repo.GetResults(query);
  30. }
  31. }
  32. }