IItemResolver.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using MediaBrowser.Controller.Entities;
  2. using MediaBrowser.Controller.Library;
  3. using MediaBrowser.Controller.Providers;
  4. using System.Collections.Generic;
  5. using MediaBrowser.Controller.IO;
  6. using MediaBrowser.Model.IO;
  7. namespace MediaBrowser.Controller.Resolvers
  8. {
  9. /// <summary>
  10. /// Interface IItemResolver
  11. /// </summary>
  12. public interface IItemResolver
  13. {
  14. /// <summary>
  15. /// Resolves the path.
  16. /// </summary>
  17. /// <param name="args">The args.</param>
  18. /// <returns>BaseItem.</returns>
  19. BaseItem ResolvePath(ItemResolveArgs args);
  20. /// <summary>
  21. /// Gets the priority.
  22. /// </summary>
  23. /// <value>The priority.</value>
  24. ResolverPriority Priority { get; }
  25. }
  26. public interface IMultiItemResolver
  27. {
  28. MultiItemResolverResult ResolveMultiple(Folder parent,
  29. List<FileSystemMetadata> files,
  30. string collectionType,
  31. IDirectoryService directoryService);
  32. }
  33. public class MultiItemResolverResult
  34. {
  35. public List<BaseItem> Items { get; set; }
  36. public List<FileSystemMetadata> ExtraFiles { get; set; }
  37. public MultiItemResolverResult()
  38. {
  39. Items = new List<BaseItem>();
  40. ExtraFiles = new List<FileSystemMetadata>();
  41. }
  42. }
  43. }