aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/PluginService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Api/PluginService.cs')
-rw-r--r--MediaBrowser.Api/PluginService.cs29
1 files changed, 25 insertions, 4 deletions
diff --git a/MediaBrowser.Api/PluginService.cs b/MediaBrowser.Api/PluginService.cs
index f982602bf..1f906f814 100644
--- a/MediaBrowser.Api/PluginService.cs
+++ b/MediaBrowser.Api/PluginService.cs
@@ -1,15 +1,15 @@
using MediaBrowser.Common.Extensions;
using MediaBrowser.Common.Net;
-using MediaBrowser.Common.Serialization;
using MediaBrowser.Controller;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Plugins;
+using MediaBrowser.Model.Serialization;
using ServiceStack.ServiceHost;
+using ServiceStack.Text.Controller;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
-using ServiceStack.Text.Controller;
namespace MediaBrowser.Api
{
@@ -120,6 +120,27 @@ namespace MediaBrowser.Api
public class PluginService : BaseRestService
{
/// <summary>
+ /// The _json serializer
+ /// </summary>
+ private readonly IJsonSerializer _jsonSerializer;
+
+ /// <summary>
+ /// Initializes a new instance of the <see cref="PluginService" /> class.
+ /// </summary>
+ /// <param name="jsonSerializer">The json serializer.</param>
+ /// <exception cref="System.ArgumentNullException">jsonSerializer</exception>
+ public PluginService(IJsonSerializer jsonSerializer)
+ : base()
+ {
+ if (jsonSerializer == null)
+ {
+ throw new ArgumentNullException("jsonSerializer");
+ }
+
+ _jsonSerializer = jsonSerializer;
+ }
+
+ /// <summary>
/// Gets the specified request.
/// </summary>
/// <param name="request">The request.</param>
@@ -198,7 +219,7 @@ namespace MediaBrowser.Api
{
var kernel = (Kernel)Kernel;
- var info = JsonSerializer.DeserializeFromStream<PluginSecurityInfo>(request.RequestStream);
+ var info = _jsonSerializer.DeserializeFromStream<PluginSecurityInfo>(request.RequestStream);
kernel.PluginSecurityManager.SupporterKey = info.SupporterKey;
kernel.PluginSecurityManager.LegacyKey = info.LegacyKey;
@@ -217,7 +238,7 @@ namespace MediaBrowser.Api
var plugin = Kernel.Plugins.First(p => p.Id == id);
- var configuration = JsonSerializer.DeserializeFromStream(request.RequestStream, plugin.ConfigurationType) as BasePluginConfiguration;
+ var configuration = _jsonSerializer.DeserializeFromStream(request.RequestStream, plugin.ConfigurationType) as BasePluginConfiguration;
plugin.UpdateConfiguration(configuration);
}