using System.Collections.Generic; using System.Linq; using Lidarr.Http.REST; using NzbDrone.Core.RootFolders; namespace Lidarr.Api.V1.RootFolders { public class RootFolderResource : RestResource { public string Path { get; set; } public bool Accessible { get; set; } public long? FreeSpace { get; set; } public long? TotalSpace { get; set; } public List UnmappedFolders { get; set; } } public static class RootFolderResourceMapper { public static RootFolderResource ToResource(this RootFolder model) { if (model == null) { return null; } return new RootFolderResource { Id = model.Id, Path = model.Path, Accessible = model.Accessible, FreeSpace = model.FreeSpace, TotalSpace = model.TotalSpace, UnmappedFolders = model.UnmappedFolders }; } public static RootFolder ToModel(this RootFolderResource resource) { if (resource == null) { return null; } return new RootFolder { Id = resource.Id, Path = resource.Path, //Accessible //FreeSpace //UnmappedFolders }; } public static List ToResource(this IEnumerable models) { return models.Select(ToResource).ToList(); } } }