UserRootFolderNameProvider.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. using MediaBrowser.Controller.Configuration;
  2. using MediaBrowser.Controller.Entities;
  3. using MediaBrowser.Controller.Providers;
  4. using MediaBrowser.Model.Logging;
  5. using System;
  6. using System.IO;
  7. using System.Threading;
  8. using System.Threading.Tasks;
  9. namespace MediaBrowser.Providers
  10. {
  11. public class UserRootFolderNameProvider : BaseMetadataProvider
  12. {
  13. public UserRootFolderNameProvider(ILogManager logManager, IServerConfigurationManager configurationManager)
  14. : base(logManager, configurationManager)
  15. {
  16. }
  17. public override bool Supports(BaseItem item)
  18. {
  19. return item is UserRootFolder;
  20. }
  21. public override Task<bool> FetchAsync(BaseItem item, bool force, BaseProviderInfo providerInfo, CancellationToken cancellationToken)
  22. {
  23. var parentName = Path.GetFileNameWithoutExtension(item.Path);
  24. if (string.Equals(parentName, "default", StringComparison.OrdinalIgnoreCase))
  25. {
  26. item.Name = "Media Library";
  27. }
  28. SetLastRefreshed(item, DateTime.UtcNow, providerInfo);
  29. return TrueTaskResult;
  30. }
  31. public override MetadataProviderPriority Priority
  32. {
  33. get { return MetadataProviderPriority.First; }
  34. }
  35. }
  36. }