Radarr/src/NzbDrone.Api/Health/HealthModule.cs

33 lines
992 B
C#
Raw Normal View History

2018-11-23 07:03:32 +00:00
using System.Collections.Generic;
2014-02-26 05:40:47 +00:00
using NzbDrone.Core.Datastore.Events;
using NzbDrone.Core.HealthCheck;
using NzbDrone.Core.Messaging.Events;
using NzbDrone.SignalR;
2018-11-23 07:03:32 +00:00
using Radarr.Http;
2014-02-26 05:40:47 +00:00
namespace NzbDrone.Api.Health
{
2018-11-23 07:03:32 +00:00
public class HealthModule : RadarrRestModuleWithSignalR<HealthResource, HealthCheck>,
IHandle<HealthCheckCompleteEvent>
2014-02-26 05:40:47 +00:00
{
private readonly IHealthCheckService _healthCheckService;
public HealthModule(IBroadcastSignalRMessage signalRBroadcaster, IHealthCheckService healthCheckService)
: base(signalRBroadcaster)
2014-02-26 05:40:47 +00:00
{
_healthCheckService = healthCheckService;
GetResourceAll = GetHealth;
}
private List<HealthResource> GetHealth()
{
return _healthCheckService.Results().ToResource();
2014-02-26 05:40:47 +00:00
}
public void Handle(HealthCheckCompleteEvent message)
2014-02-26 05:40:47 +00:00
{
BroadcastResourceChange(ModelAction.Sync);
}
}
2018-11-23 07:03:32 +00:00
}