aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/Library/FileOrganizationService.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-01-21 01:10:58 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-01-21 01:10:58 -0500
commit123528327974d9291f5868bb87a0d63437fa1ae5 (patch)
treec201611062191638b47c0a60ed655acce20d1871 /MediaBrowser.Api/Library/FileOrganizationService.cs
parent92c76de2ba01608e37a3f7ba311d2711b2230dc8 (diff)
#680 - added auto organize page
Diffstat (limited to 'MediaBrowser.Api/Library/FileOrganizationService.cs')
-rw-r--r--MediaBrowser.Api/Library/FileOrganizationService.cs43
1 files changed, 41 insertions, 2 deletions
diff --git a/MediaBrowser.Api/Library/FileOrganizationService.cs b/MediaBrowser.Api/Library/FileOrganizationService.cs
index 529a75506..1244a16f1 100644
--- a/MediaBrowser.Api/Library/FileOrganizationService.cs
+++ b/MediaBrowser.Api/Library/FileOrganizationService.cs
@@ -2,10 +2,11 @@
using MediaBrowser.Model.FileOrganization;
using MediaBrowser.Model.Querying;
using ServiceStack;
+using System.Threading.Tasks;
namespace MediaBrowser.Api.Library
{
- [Route("/Library/FileOrganization/Results", "GET")]
+ [Route("/Library/FileOrganization", "GET")]
[Api(Description = "Gets file organization results")]
public class GetFileOrganizationActivity : IReturn<QueryResult<FileOrganizationResult>>
{
@@ -24,6 +25,30 @@ namespace MediaBrowser.Api.Library
public int? Limit { get; set; }
}
+ [Route("/Library/FileOrganizations/{Id}/File", "DELETE")]
+ [Api(Description = "Deletes the original file of a organizer result")]
+ public class DeleteOriginalFile : IReturn<QueryResult<FileOrganizationResult>>
+ {
+ /// <summary>
+ /// Gets or sets the id.
+ /// </summary>
+ /// <value>The id.</value>
+ [ApiMember(Name = "Id", Description = "Result Id", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "DELETE")]
+ public string Id { get; set; }
+ }
+
+ [Route("/Library/FileOrganizations/{Id}/Organize", "POST")]
+ [Api(Description = "Performs an organization")]
+ public class PerformOrganization : IReturn<QueryResult<FileOrganizationResult>>
+ {
+ /// <summary>
+ /// Gets or sets the id.
+ /// </summary>
+ /// <value>The id.</value>
+ [ApiMember(Name = "Id", Description = "Result Id", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "POST")]
+ public string Id { get; set; }
+ }
+
public class FileOrganizationService : BaseApiService
{
private readonly IFileOrganizationService _iFileOrganizationService;
@@ -38,10 +63,24 @@ namespace MediaBrowser.Api.Library
var result = _iFileOrganizationService.GetResults(new FileOrganizationResultQuery
{
Limit = request.Limit,
- StartIndex = request.Limit
+ StartIndex = request.StartIndex
});
return ToOptimizedResult(result);
}
+
+ public void Delete(DeleteOriginalFile request)
+ {
+ var task = _iFileOrganizationService.DeleteOriginalFile(request.Id);
+
+ Task.WaitAll(task);
+ }
+
+ public void Post(PerformOrganization request)
+ {
+ var task = _iFileOrganizationService.PerformOrganization(request.Id);
+
+ Task.WaitAll(task);
+ }
}
}