1
0
Fork 0
mirror of https://github.com/Radarr/Radarr synced 2025-03-12 15:15:54 +00:00
Radarr/NzbDrone.Api/RootFolders/RootFolderModule.cs

41 lines
1.1 KiB
C#
Raw Normal View History

using System.Linq;
using Nancy;
2013-02-23 12:35:26 -08:00
using NzbDrone.Api.Extensions;
2013-01-24 12:48:44 -08:00
using NzbDrone.Core.Providers;
2013-03-06 17:51:47 -08:00
2013-02-03 20:18:59 -08:00
using NzbDrone.Core.RootFolders;
2013-01-24 12:48:44 -08:00
namespace NzbDrone.Api.RootFolders
2013-01-24 12:48:44 -08:00
{
public class RootFolderModule : NzbDroneApiModule
2013-01-24 12:48:44 -08:00
{
2013-02-03 20:18:59 -08:00
private readonly RootFolderService _rootFolderService;
2013-01-24 12:48:44 -08:00
public RootFolderModule(RootFolderService rootFolderService)
: base("/rootfolder")
2013-01-24 12:48:44 -08:00
{
2013-02-03 20:18:59 -08:00
_rootFolderService = rootFolderService;
2013-01-24 12:48:44 -08:00
Get["/"] = x => GetRootFolders();
Post["/"] = x => AddRootFolder();
Delete["/{id}"] = x => DeleteRootFolder((int)x.id);
2013-01-24 12:48:44 -08:00
}
private Response AddRootFolder()
{
2013-02-04 20:07:07 -08:00
var dir = _rootFolderService.Add(Request.Body.FromJson<RootFolder>());
return dir.AsResponse(HttpStatusCode.Created);
2013-01-24 12:48:44 -08:00
}
private Response GetRootFolders()
{
2013-02-03 20:18:59 -08:00
return _rootFolderService.All().AsResponse();
2013-01-24 12:48:44 -08:00
}
private Response DeleteRootFolder(int folderId)
{
2013-02-03 20:18:59 -08:00
_rootFolderService.Remove(folderId);
return new Response { StatusCode = HttpStatusCode.OK };
}
2013-01-24 12:48:44 -08:00
}
}