1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2025-03-05 15:15:59 +02:00
Sonarr/NzbDrone.Core/Update/UpdatePackageProvider.cs

31 lines
859 B
C#
Raw Normal View History

2013-04-13 16:57:10 -07:00
using System;
using NzbDrone.Common;
2013-09-10 23:33:47 -07:00
using RestSharp;
using NzbDrone.Core.Rest;
2013-04-13 16:57:10 -07:00
namespace NzbDrone.Core.Update
{
public interface IUpdatePackageProvider
2013-04-13 16:57:10 -07:00
{
2013-09-10 23:33:47 -07:00
UpdatePackage GetLatestUpdate(string branch, Version currentVersion);
2013-04-13 16:57:10 -07:00
}
public class UpdatePackageProvider : IUpdatePackageProvider
2013-04-13 16:57:10 -07:00
{
2013-09-10 23:33:47 -07:00
public UpdatePackage GetLatestUpdate(string branch, Version currentVersion)
2013-04-13 16:57:10 -07:00
{
2013-09-10 23:33:47 -07:00
var restClient = new RestClient(Services.RootUrl);
2013-04-13 16:57:10 -07:00
2013-09-10 23:33:47 -07:00
var request = new RestRequest("/v1/update/{branch}");
request.AddParameter("version", currentVersion);
request.AddUrlSegment("branch", branch);
var update = restClient.ExecuteAndValidate<UpdatePackageAvailable>(request);
2013-04-13 16:57:10 -07:00
2013-08-23 19:21:12 -07:00
if (!update.Available) return null;
2013-04-13 16:57:10 -07:00
2013-08-23 19:21:12 -07:00
return update.UpdatePackage;
}
2013-04-13 16:57:10 -07:00
}
}