2013-09-12 15:42:01 -07:00
|
|
|
using NzbDrone.Core.Datastore;
|
2013-06-18 18:01:08 -07:00
|
|
|
using NzbDrone.Core.Instrumentation.Commands;
|
2013-09-10 23:33:47 -07:00
|
|
|
using NzbDrone.Core.Messaging;
|
2013-09-13 23:36:07 -07:00
|
|
|
using NzbDrone.Core.Messaging.Commands;
|
2013-02-23 11:38:25 -08:00
|
|
|
|
|
|
|
namespace NzbDrone.Core.Instrumentation
|
|
|
|
{
|
|
|
|
public interface ILogService
|
|
|
|
{
|
2013-06-04 17:49:53 -07:00
|
|
|
PagingSpec<Log> Paged(PagingSpec<Log> pagingSpec);
|
2013-02-23 11:38:25 -08:00
|
|
|
}
|
|
|
|
|
2013-08-07 20:18:26 -07:00
|
|
|
public class LogService : ILogService, IExecute<TrimLogCommand>, IExecute<ClearLogCommand>
|
2013-02-23 11:38:25 -08:00
|
|
|
{
|
|
|
|
private readonly ILogRepository _logRepository;
|
|
|
|
|
2013-03-05 11:58:53 -08:00
|
|
|
public LogService(ILogRepository logRepository)
|
2013-02-23 11:38:25 -08:00
|
|
|
{
|
|
|
|
_logRepository = logRepository;
|
|
|
|
}
|
|
|
|
|
2013-06-18 18:01:08 -07:00
|
|
|
public PagingSpec<Log> Paged(PagingSpec<Log> pagingSpec)
|
2013-02-23 11:38:25 -08:00
|
|
|
{
|
2013-06-18 18:01:08 -07:00
|
|
|
return _logRepository.GetPaged(pagingSpec);
|
2013-02-23 11:38:25 -08:00
|
|
|
}
|
|
|
|
|
2013-06-18 18:01:08 -07:00
|
|
|
public void Execute(TrimLogCommand message)
|
2013-02-23 11:38:25 -08:00
|
|
|
{
|
|
|
|
_logRepository.Trim();
|
|
|
|
}
|
2013-08-07 20:18:26 -07:00
|
|
|
|
|
|
|
public void Execute(ClearLogCommand message)
|
|
|
|
{
|
2013-08-08 00:38:14 -07:00
|
|
|
_logRepository.Purge();
|
2013-08-07 20:18:26 -07:00
|
|
|
}
|
2013-02-23 11:38:25 -08:00
|
|
|
}
|
|
|
|
}
|