2011-10-07 06:37:41 +03:00
using System ;
2011-10-15 03:41:09 +03:00
using System.Diagnostics ;
2013-01-30 05:21:45 +03:00
using System.IO ;
2013-07-09 03:47:09 +03:00
using NzbDrone.Common.EnvironmentInfo ;
2011-10-07 06:37:41 +03:00
2011-10-23 08:26:43 +03:00
namespace NzbDrone.Common
2011-10-07 06:37:41 +03:00
{
2013-04-16 07:52:41 +03:00
public interface IConsoleService
2011-10-07 06:37:41 +03:00
{
2013-04-16 07:52:41 +03:00
void PrintHelp ( ) ;
void PrintServiceAlreadyExist ( ) ;
2013-07-09 03:47:09 +03:00
void PrintServiceDoesNotExist ( ) ;
2013-04-16 07:52:41 +03:00
}
public class ConsoleService : IConsoleService
{
2013-08-21 01:12:35 +03:00
public static bool IsConsoleAvailable
2013-01-30 05:21:45 +03:00
{
get { return Console . In ! = StreamReader . Null ; }
}
2013-04-16 07:52:41 +03:00
public void PrintHelp ( )
2011-10-09 05:16:11 +03:00
{
2011-10-15 03:41:09 +03:00
Console . WriteLine ( ) ;
Console . WriteLine ( " Usage: {0} <command> " , Process . GetCurrentProcess ( ) . MainModule . ModuleName ) ;
Console . WriteLine ( " Commands:" ) ;
2013-08-21 01:12:35 +03: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 ) ;
2013-07-09 03:47:09 +03:00
Console . WriteLine ( " /{0} Don't open NzbDrone in a browser" , StartupArguments . NO_BROWSER ) ;
2011-10-15 03:41:09 +03:00
Console . WriteLine ( " <No Arguments> Run application in console mode." ) ;
2011-10-09 05:16:11 +03:00
}
2011-10-14 04:22:51 +03:00
2013-04-16 07:52:41 +03:00
public void PrintServiceAlreadyExist ( )
2011-10-14 04:22:51 +03:00
{
2011-10-26 20:15:47 +03:00
Console . WriteLine ( "A service with the same name ({0}) already exists. Aborting installation" , ServiceProvider . NZBDRONE_SERVICE_NAME ) ;
2011-10-14 04:22:51 +03:00
}
2011-10-15 03:41:09 +03:00
2013-07-09 03:47:09 +03:00
public void PrintServiceDoesNotExist ( )
2011-10-15 03:41:09 +03:00
{
2011-10-26 20:15:47 +03:00
Console . WriteLine ( "Can't find service ({0})" , ServiceProvider . NZBDRONE_SERVICE_NAME ) ;
2011-10-15 03:41:09 +03:00
}
2011-10-07 06:37:41 +03:00
}
2011-10-07 09:57:43 +03:00
}