From 6efd22a3d22f8d87ad17da3a1e47ca26c5bb09f2 Mon Sep 17 00:00:00 2001 From: LukePulverenti Date: Tue, 26 Feb 2013 11:10:55 -0500 Subject: added a shutdown api method, font size fix and other decouplings --- MediaBrowser.Api/SystemService.cs | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) (limited to 'MediaBrowser.Api/SystemService.cs') diff --git a/MediaBrowser.Api/SystemService.cs b/MediaBrowser.Api/SystemService.cs index cf0be35a2..55e8ee693 100644 --- a/MediaBrowser.Api/SystemService.cs +++ b/MediaBrowser.Api/SystemService.cs @@ -1,4 +1,5 @@ using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Kernel; using MediaBrowser.Controller; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Serialization; @@ -29,6 +30,11 @@ namespace MediaBrowser.Api { } + [Route("/System/Shutdown", "POST")] + public class ShutdownApplication + { + } + /// /// Class GetConfiguration /// @@ -61,19 +67,30 @@ namespace MediaBrowser.Api /// private readonly IJsonSerializer _jsonSerializer; + /// + /// The _app host + /// + private readonly IApplicationHost _appHost; + /// /// Initializes a new instance of the class. /// /// The json serializer. + /// The app host. /// jsonSerializer - public SystemService(IJsonSerializer jsonSerializer) + public SystemService(IJsonSerializer jsonSerializer, IApplicationHost appHost) : base() { if (jsonSerializer == null) { throw new ArgumentNullException("jsonSerializer"); } + if (appHost == null) + { + throw new ArgumentNullException("appHost"); + } + _appHost = appHost; _jsonSerializer = jsonSerializer; } @@ -118,6 +135,19 @@ namespace MediaBrowser.Api }); } + /// + /// Posts the specified request. + /// + /// The request. + public void Post(ShutdownApplication request) + { + Task.Run(async () => + { + await Task.Delay(100); + _appHost.Shutdown(); + }); + } + /// /// Posts the specified configuraiton. /// -- cgit v1.2.3