IPackageManager.cs 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading;
  6. using System.Threading.Tasks;
  7. using MediaBrowser.Common.Kernel;
  8. using MediaBrowser.Common.Net;
  9. using MediaBrowser.Common.Security;
  10. using MediaBrowser.Model.Serialization;
  11. using MediaBrowser.Model.Updates;
  12. namespace MediaBrowser.Common.Updates
  13. {
  14. public interface IPackageManager
  15. {
  16. /// <summary>
  17. /// Gets all available packages.
  18. /// </summary>
  19. /// <param name="client"></param>
  20. /// <param name="networkManager"></param>
  21. /// <param name="securityManager"></param>
  22. /// <param name="resourcePool"></param>
  23. /// <param name="serializer"></param>
  24. /// <param name="cancellationToken">The cancellation token.</param>
  25. /// <returns>Task{List{PackageInfo}}.</returns>
  26. Task<IEnumerable<PackageInfo>> GetAvailablePackages(IHttpClient client,
  27. INetworkManager networkManager,
  28. ISecurityManager securityManager,
  29. ResourcePool resourcePool,
  30. IJsonSerializer serializer,
  31. CancellationToken cancellationToken);
  32. /// <summary>
  33. /// Installs a package.
  34. /// </summary>
  35. /// <param name="package">The package.</param>
  36. /// <param name="cancellationToken">The cancellation token.</param>
  37. /// <returns>Task.</returns>
  38. Task InstallPackage(PackageVersionInfo package, CancellationToken cancellationToken);
  39. }
  40. }