From b5c41d104cf631e84f0c46696d4452c7082692f3 Mon Sep 17 00:00:00 2001 From: softworkz Date: Sun, 28 Feb 2016 03:34:53 +0100 Subject: [PATCH] Use JSON deserialization for NewSeriesProviderIds parameter --- .../Library/FileOrganizationService.cs | 21 +++++++------------ 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/MediaBrowser.Api/Library/FileOrganizationService.cs b/MediaBrowser.Api/Library/FileOrganizationService.cs index dba705ba3c..b04da49f69 100644 --- a/MediaBrowser.Api/Library/FileOrganizationService.cs +++ b/MediaBrowser.Api/Library/FileOrganizationService.cs @@ -6,6 +6,7 @@ using MediaBrowser.Model.Querying; using ServiceStack; using System.Threading.Tasks; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Serialization; namespace MediaBrowser.Api.Library { @@ -118,9 +119,14 @@ namespace MediaBrowser.Api.Library { private readonly IFileOrganizationService _iFileOrganizationService; - public FileOrganizationService(IFileOrganizationService iFileOrganizationService) + /// The _json serializer + /// + private readonly IJsonSerializer _jsonSerializer; + + public FileOrganizationService(IFileOrganizationService iFileOrganizationService, IJsonSerializer jsonSerializer) { _iFileOrganizationService = iFileOrganizationService; + _jsonSerializer = jsonSerializer; } public object Get(GetFileOrganizationActivity request) @@ -161,18 +167,7 @@ namespace MediaBrowser.Api.Library if (!string.IsNullOrEmpty(request.NewSeriesProviderIds)) { - var str = request.NewSeriesProviderIds.Replace("{", "").Replace("}", "").Replace("\"", ""); - - foreach (var item in str.Split(',')) - { - var itemArr = item.Split(':'); - if (itemArr.Length > 1) - { - var key = itemArr[0].Trim(); - var val = itemArr[1].Trim(); - dicNewProviderIds.Add(key, val); - } - } + dicNewProviderIds = _jsonSerializer.DeserializeFromString>(request.NewSeriesProviderIds); } var task = _iFileOrganizationService.PerformEpisodeOrganization(new EpisodeFileOrganizationRequest