sonarr-repo-only/NzbDrone.Common/ConsoleService.cs

53 lines
1.9 KiB
C#
Raw Normal View History

2011-10-07 03:37:41 +00:00
using System;
using System.Diagnostics;
using System.IO;
using NzbDrone.Common.EnvironmentInfo;
2011-10-07 03:37:41 +00:00
namespace NzbDrone.Common
2011-10-07 03:37:41 +00:00
{
2013-04-16 04:52:41 +00:00
public interface IConsoleService
2011-10-07 03:37:41 +00:00
{
2013-04-16 04:52:41 +00:00
bool IsConsoleApplication { get; }
void WaitForClose();
void PrintHelp();
void PrintServiceAlreadyExist();
void PrintServiceDoesNotExist();
2013-04-16 04:52:41 +00:00
}
public class ConsoleService : IConsoleService
{
public bool IsConsoleApplication
{
get { return Console.In != StreamReader.Null; }
}
2013-04-16 04:52:41 +00:00
public void WaitForClose()
2011-10-07 03:37:41 +00:00
{
while (true)
{
2011-10-13 02:24:30 +00:00
Console.ReadLine();
2011-10-07 03:37:41 +00:00
}
}
2013-04-16 04:52:41 +00:00
public void PrintHelp()
{
Console.WriteLine();
Console.WriteLine(" Usage: {0} <command> ", Process.GetCurrentProcess().MainModule.ModuleName);
Console.WriteLine(" Commands:");
2013-08-14 04:02:56 +00:00
Console.WriteLine(" /{0} Install the application as a Windows Service ({1}).",StartupArguments.INSTALL_SERVICE, ServiceProvider.NZBDRONE_SERVICE_NAME);
Console.WriteLine(" /{0} Uninstall already installed Windows Service ({1}).",StartupArguments.UNINSTALL_SERVICE, ServiceProvider.NZBDRONE_SERVICE_NAME);
Console.WriteLine(" /{0} Don't open NzbDrone in a browser", StartupArguments.NO_BROWSER);
Console.WriteLine(" <No Arguments> Run application in console mode.");
}
2013-04-16 04:52:41 +00:00
public void PrintServiceAlreadyExist()
{
Console.WriteLine("A service with the same name ({0}) already exists. Aborting installation", ServiceProvider.NZBDRONE_SERVICE_NAME);
}
public void PrintServiceDoesNotExist()
{
Console.WriteLine("Can't find service ({0})", ServiceProvider.NZBDRONE_SERVICE_NAME);
}
2011-10-07 03:37:41 +00:00
}
2011-10-07 06:57:43 +00:00
}