You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
recyclarr/src/Recyclarr.Compatibility/ServiceInformation.cs

34 lines
849 B

using Flurl.Http;
using Recyclarr.Config.Models;
using Recyclarr.ServarrApi.Services;
using Serilog;
namespace Recyclarr.Compatibility;
public class ServiceInformation : IServiceInformation
{
private readonly ISystemApiService _api;
private readonly ILogger _log;
public ServiceInformation(ISystemApiService api, ILogger log)
{
_api = api;
_log = log;
}
public async Task<Version> GetVersion(IServiceConfiguration config)
{
try
{
var status = await _api.GetStatus(config);
_log.Debug("{Service} Version: {Version}", status.AppName, status.Version);
return new Version(status.Version);
}
catch (FlurlHttpException)
{
_log.Error("Unable to obtain service version information");
throw;
}
}
}