mirror of
https://github.com/Prowlarr/Prowlarr.git
synced 2025-09-29 13:25:13 +02:00
fixed apptype detection during update
This commit is contained in:
38
NzbDrone.Update/UpdateEngine/DetectApplicationType.cs
Normal file
38
NzbDrone.Update/UpdateEngine/DetectApplicationType.cs
Normal file
@@ -0,0 +1,38 @@
|
||||
using System.Linq;
|
||||
using NzbDrone.Common;
|
||||
|
||||
namespace NzbDrone.Update.UpdateEngine
|
||||
{
|
||||
public interface IDetectApplicationType
|
||||
{
|
||||
AppType GetAppType();
|
||||
}
|
||||
|
||||
public class DetectApplicationType : IDetectApplicationType
|
||||
{
|
||||
private readonly IServiceProvider _serviceProvider;
|
||||
private readonly IProcessProvider _processProvider;
|
||||
|
||||
public DetectApplicationType(IServiceProvider serviceProvider, IProcessProvider processProvider)
|
||||
{
|
||||
_serviceProvider = serviceProvider;
|
||||
_processProvider = processProvider;
|
||||
}
|
||||
|
||||
public AppType GetAppType()
|
||||
{
|
||||
if (_serviceProvider.ServiceExist(ServiceProvider.NZBDRONE_SERVICE_NAME)
|
||||
&& _serviceProvider.IsServiceRunning(ServiceProvider.NZBDRONE_SERVICE_NAME))
|
||||
{
|
||||
return AppType.Service;
|
||||
}
|
||||
|
||||
if (_processProvider.GetProcessByName(ProcessProvider.NzbDroneConsoleProcessName).Any())
|
||||
{
|
||||
return AppType.Console;
|
||||
}
|
||||
|
||||
return AppType.Normal;
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user