MediaReceiverRegistrarService.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using System.Net.Http;
  2. using System.Threading.Tasks;
  3. using Emby.Dlna.Service;
  4. using MediaBrowser.Controller.Configuration;
  5. using Microsoft.Extensions.Logging;
  6. namespace Emby.Dlna.MediaReceiverRegistrar
  7. {
  8. /// <summary>
  9. /// Defines the <see cref="MediaReceiverRegistrarService" />.
  10. /// </summary>
  11. public class MediaReceiverRegistrarService : BaseService, IMediaReceiverRegistrar
  12. {
  13. private readonly IServerConfigurationManager _config;
  14. /// <summary>
  15. /// Initializes a new instance of the <see cref="MediaReceiverRegistrarService"/> class.
  16. /// </summary>
  17. /// <param name="logger">The <see cref="ILogger{MediaReceiverRegistrarService}"/> for use with the <see cref="MediaReceiverRegistrarService"/> instance.</param>
  18. /// <param name="httpClientFactory">The <see cref="IHttpClientFactory"/> for use with the <see cref="MediaReceiverRegistrarService"/> instance.</param>
  19. /// <param name="config">The <see cref="IServerConfigurationManager"/> for use with the <see cref="MediaReceiverRegistrarService"/> instance.</param>
  20. public MediaReceiverRegistrarService(
  21. ILogger<MediaReceiverRegistrarService> logger,
  22. IHttpClientFactory httpClientFactory,
  23. IServerConfigurationManager config)
  24. : base(logger, httpClientFactory)
  25. {
  26. _config = config;
  27. }
  28. /// <inheritdoc />
  29. public string GetServiceXml()
  30. {
  31. return MediaReceiverRegistrarXmlBuilder.GetXml();
  32. }
  33. /// <inheritdoc />
  34. public Task<ControlResponse> ProcessControlRequestAsync(ControlRequest request)
  35. {
  36. return new ControlHandler(
  37. _config,
  38. Logger)
  39. .ProcessControlRequestAsync(request);
  40. }
  41. }
  42. }