diff --git a/src/Lidarr.Api.V1/RootFolders/RootFolderResource.cs b/src/Lidarr.Api.V1/RootFolders/RootFolderResource.cs index 27d5cb18d..f0b176691 100644 --- a/src/Lidarr.Api.V1/RootFolders/RootFolderResource.cs +++ b/src/Lidarr.Api.V1/RootFolders/RootFolderResource.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Linq; using NzbDrone.Core.RootFolders; using Lidarr.Http.REST; @@ -9,6 +9,7 @@ namespace Lidarr.Api.V1.RootFolders { public string Path { get; set; } public long? FreeSpace { get; set; } + public long? TotalSpace { get; set; } public List UnmappedFolders { get; set; } } @@ -25,6 +26,7 @@ namespace Lidarr.Api.V1.RootFolders Path = model.Path, FreeSpace = model.FreeSpace, + TotalSpace = model.TotalSpace, UnmappedFolders = model.UnmappedFolders }; } @@ -48,4 +50,4 @@ namespace Lidarr.Api.V1.RootFolders return models.Select(ToResource).ToList(); } } -} \ No newline at end of file +} diff --git a/src/NzbDrone.Core/Datastore/TableMapping.cs b/src/NzbDrone.Core/Datastore/TableMapping.cs index 72a2706bb..997e2835d 100644 --- a/src/NzbDrone.Core/Datastore/TableMapping.cs +++ b/src/NzbDrone.Core/Datastore/TableMapping.cs @@ -50,7 +50,11 @@ namespace NzbDrone.Core.Datastore RegisterMappers(); Mapper.Entity().RegisterModel("Config"); - Mapper.Entity().RegisterModel("RootFolders").Ignore(r => r.FreeSpace); + + Mapper.Entity().RegisterModel("RootFolders") + .Ignore(r => r.FreeSpace) + .Ignore(r => r.TotalSpace); + Mapper.Entity().RegisterModel("ScheduledTasks"); Mapper.Entity().RegisterDefinition("Indexers") diff --git a/src/NzbDrone.Core/RootFolders/RootFolder.cs b/src/NzbDrone.Core/RootFolders/RootFolder.cs index 823265323..f32716b52 100644 --- a/src/NzbDrone.Core/RootFolders/RootFolder.cs +++ b/src/NzbDrone.Core/RootFolders/RootFolder.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using NzbDrone.Core.Datastore; @@ -9,7 +9,8 @@ namespace NzbDrone.Core.RootFolders public string Path { get; set; } public long? FreeSpace { get; set; } + public long? TotalSpace { get; set; } public List UnmappedFolders { get; set; } } -} \ No newline at end of file +} diff --git a/src/NzbDrone.Core/RootFolders/RootFolderService.cs b/src/NzbDrone.Core/RootFolders/RootFolderService.cs index 4ee118524..e6e6b1ee1 100644 --- a/src/NzbDrone.Core/RootFolders/RootFolderService.cs +++ b/src/NzbDrone.Core/RootFolders/RootFolderService.cs @@ -73,6 +73,7 @@ namespace NzbDrone.Core.RootFolders if (folder.Path.IsPathValid() && _diskProvider.FolderExists(folder.Path)) { folder.FreeSpace = _diskProvider.GetAvailableSpace(folder.Path); + folder.TotalSpace = _diskProvider.GetTotalSize(folder.Path); folder.UnmappedFolders = GetUnmappedFolders(folder.Path); } } @@ -80,7 +81,6 @@ namespace NzbDrone.Core.RootFolders catch (Exception ex) { _logger.Error(ex, "Unable to get free space and unmapped folders for root folder {0}", folder.Path); - folder.FreeSpace = 0; folder.UnmappedFolders = new List(); } }); @@ -115,6 +115,7 @@ namespace NzbDrone.Core.RootFolders _rootFolderRepository.Insert(rootFolder); rootFolder.FreeSpace = _diskProvider.GetAvailableSpace(rootFolder.Path); + rootFolder.TotalSpace = _diskProvider.GetTotalSize(rootFolder.Path); rootFolder.UnmappedFolders = GetUnmappedFolders(rootFolder.Path); return rootFolder; } @@ -162,6 +163,7 @@ namespace NzbDrone.Core.RootFolders { var rootFolder = _rootFolderRepository.Get(id); rootFolder.FreeSpace = _diskProvider.GetAvailableSpace(rootFolder.Path); + rootFolder.TotalSpace = _diskProvider.GetTotalSize(rootFolder.Path); rootFolder.UnmappedFolders = GetUnmappedFolders(rootFolder.Path); return rootFolder; }