aboutsummaryrefslogtreecommitdiff
path: root/Emby.Dlna/ConnectionManager/ConnectionManager.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-10-29 18:22:20 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-10-29 18:22:20 -0400
commitdca78b13411db96366dddfa0d68bb6d36d28ad14 (patch)
tree7d41e670f1cadec0db9e1ed7115e151da891f7ea /Emby.Dlna/ConnectionManager/ConnectionManager.cs
parent597e27d1c6199a40398abb068282711a9cb9db1b (diff)
rework dlna project
Diffstat (limited to 'Emby.Dlna/ConnectionManager/ConnectionManager.cs')
-rw-r--r--Emby.Dlna/ConnectionManager/ConnectionManager.cs37
1 files changed, 37 insertions, 0 deletions
diff --git a/Emby.Dlna/ConnectionManager/ConnectionManager.cs b/Emby.Dlna/ConnectionManager/ConnectionManager.cs
new file mode 100644
index 000000000..62cd3904d
--- /dev/null
+++ b/Emby.Dlna/ConnectionManager/ConnectionManager.cs
@@ -0,0 +1,37 @@
+using MediaBrowser.Common.Net;
+using MediaBrowser.Controller.Configuration;
+using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Dlna.Service;
+using MediaBrowser.Model.Logging;
+using System.Collections.Generic;
+
+namespace MediaBrowser.Dlna.ConnectionManager
+{
+ public class ConnectionManager : BaseService, IConnectionManager
+ {
+ private readonly IDlnaManager _dlna;
+ private readonly ILogger _logger;
+ private readonly IServerConfigurationManager _config;
+
+ public ConnectionManager(IDlnaManager dlna, IServerConfigurationManager config, ILogger logger, IHttpClient httpClient)
+ : base(logger, httpClient)
+ {
+ _dlna = dlna;
+ _config = config;
+ _logger = logger;
+ }
+
+ public string GetServiceXml(IDictionary<string, string> headers)
+ {
+ return new ConnectionManagerXmlBuilder().GetXml();
+ }
+
+ public ControlResponse ProcessControlRequest(ControlRequest request)
+ {
+ var profile = _dlna.GetProfile(request.Headers) ??
+ _dlna.GetDefaultProfile();
+
+ return new ControlHandler(_logger, profile, _config).ProcessControlRequest(request);
+ }
+ }
+}