RokuControllerFactory.cs 1012 B

1234567891011121314151617181920212223242526272829303132
  1. using MediaBrowser.Common.Net;
  2. using MediaBrowser.Controller;
  3. using MediaBrowser.Controller.Session;
  4. using MediaBrowser.Model.Serialization;
  5. using System;
  6. namespace MediaBrowser.Server.Implementations.Roku
  7. {
  8. public class RokuControllerFactory : ISessionControllerFactory
  9. {
  10. private readonly IHttpClient _httpClient;
  11. private readonly IJsonSerializer _json;
  12. private readonly IServerApplicationHost _appHost;
  13. public RokuControllerFactory(IHttpClient httpClient, IJsonSerializer json, IServerApplicationHost appHost)
  14. {
  15. _httpClient = httpClient;
  16. _json = json;
  17. _appHost = appHost;
  18. }
  19. public ISessionController GetSessionController(SessionInfo session)
  20. {
  21. if (string.Equals(session.Client, "roku", StringComparison.OrdinalIgnoreCase))
  22. {
  23. return new RokuSessionController(_httpClient, _json, _appHost, session);
  24. }
  25. return null;
  26. }
  27. }
  28. }