Switched to BigInteger for qbit eta as workaround for api bug, tyvm.
This commit is contained in:
parent
60c73df685
commit
03997e2a0d
|
@ -98,6 +98,7 @@
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
|
<Reference Include="System.Numerics" />
|
||||||
<Reference Include="System.Xml" />
|
<Reference Include="System.Xml" />
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
<Reference Include="Microsoft.CSharp" />
|
<Reference Include="Microsoft.CSharp" />
|
||||||
|
|
|
@ -107,7 +107,7 @@ namespace NzbDrone.Core.Download.Clients.QBittorrent
|
||||||
item.TotalSize = torrent.Size;
|
item.TotalSize = torrent.Size;
|
||||||
item.DownloadClient = Definition.Name;
|
item.DownloadClient = Definition.Name;
|
||||||
item.RemainingSize = (long)(torrent.Size * (1.0 - torrent.Progress));
|
item.RemainingSize = (long)(torrent.Size * (1.0 - torrent.Progress));
|
||||||
item.RemainingTime = TimeSpan.FromSeconds(torrent.Eta);
|
item.RemainingTime = GetRemainingTime(torrent);
|
||||||
|
|
||||||
item.OutputPath = _remotePathMappingService.RemapRemoteToLocal(Settings.Host, new OsPath(torrent.SavePath));
|
item.OutputPath = _remotePathMappingService.RemapRemoteToLocal(Settings.Host, new OsPath(torrent.SavePath));
|
||||||
|
|
||||||
|
@ -333,5 +333,15 @@ namespace NzbDrone.Core.Download.Clients.QBittorrent
|
||||||
_logger.Warn(ex, "Failed to set inital state for {0}.", hash);
|
_logger.Warn(ex, "Failed to set inital state for {0}.", hash);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected TimeSpan? GetRemainingTime(QBittorrentTorrent torrent)
|
||||||
|
{
|
||||||
|
if (torrent.Eta < 0 || torrent.Eta > 365 * 24 * 3600)
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return TimeSpan.FromSeconds((int)torrent.Eta);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
using Newtonsoft.Json;
|
using System.Numerics;
|
||||||
|
using Newtonsoft.Json;
|
||||||
|
|
||||||
namespace NzbDrone.Core.Download.Clients.QBittorrent
|
namespace NzbDrone.Core.Download.Clients.QBittorrent
|
||||||
{
|
{
|
||||||
|
@ -13,7 +14,7 @@ namespace NzbDrone.Core.Download.Clients.QBittorrent
|
||||||
|
|
||||||
public double Progress { get; set; } // Torrent progress (%/100)
|
public double Progress { get; set; } // Torrent progress (%/100)
|
||||||
|
|
||||||
public ulong Eta { get; set; } // Torrent ETA (seconds)
|
public BigInteger Eta { get; set; } // Torrent ETA (seconds) (QBit contains a bug exceeding ulong limits)
|
||||||
|
|
||||||
public string State { get; set; } // Torrent state. See possible values here below
|
public string State { get; set; } // Torrent state. See possible values here below
|
||||||
|
|
||||||
|
|
|
@ -98,6 +98,7 @@
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
|
<Reference Include="System.Numerics" />
|
||||||
<Reference Include="System.Web" />
|
<Reference Include="System.Web" />
|
||||||
<Reference Include="System.Web.Extensions" />
|
<Reference Include="System.Web.Extensions" />
|
||||||
<Reference Include="System.Windows.Forms" />
|
<Reference Include="System.Windows.Forms" />
|
||||||
|
|
Loading…
Reference in New Issue