Jackett.Services.ServiceConfigService.ServiceExists C# (CSharp) Method

ServiceExists() public method

public ServiceExists ( ) : bool
return bool
        public bool ServiceExists()
        {
            return GetService(NAME) != null;
        }

Usage Example

示例#1
0
        private void ProcessUpdate(UpdaterConsoleOptions options)
        {
            var updateLocation = GetUpdateLocation();
            if(!(updateLocation.EndsWith("\\") || updateLocation.EndsWith("/")))
            {
                updateLocation += Path.DirectorySeparatorChar;
            }

            var isWindows = System.Environment.OSVersion.Platform != PlatformID.Unix;
            var trayRunning = false;
            var trayProcesses = Process.GetProcessesByName("JackettTray.exe");
            if (isWindows)
            {
                if (trayProcesses.Count() > 0)
                {  
                    foreach (var proc in trayProcesses)
                    {
                        try
                        {
                            Console.WriteLine("Killing tray process " + proc.Id);
                            proc.Kill();
                            trayRunning = true;
                        }
                        catch { }
                    }
                }
            }

            var files = Directory.GetFiles(updateLocation, "*.*", SearchOption.AllDirectories);
            foreach(var file in files)
            {
                var fileName = Path.GetFileName(file).ToLowerInvariant();

                if (fileName.EndsWith(".zip") ||
                    fileName.EndsWith(".tar") ||
                    fileName.EndsWith(".gz"))
                {
                    continue;
                }

                Console.WriteLine("Copying " + fileName);
                var dest = Path.Combine(options.Path, file.Substring(updateLocation.Length));
                File.Copy(file, dest, true);
            }

            if (trayRunning)
            {
                var startInfo = new ProcessStartInfo()
                {
                    Arguments = options.Args,
                    FileName = Path.Combine(options.Path, "JackettTray.exe"),
                    UseShellExecute = true
                };

                Process.Start(startInfo);
            }

            if(string.Equals(options.Type, "JackettService.exe", StringComparison.InvariantCultureIgnoreCase))
            {
                var serviceHelper = new ServiceConfigService(null, null);
                if (serviceHelper.ServiceExists())
                {
                    serviceHelper.Start();
                }
            } else
            {
                var startInfo = new ProcessStartInfo()
                {
                    Arguments = options.Args,
                    FileName = Path.Combine(options.Path, "JackettConsole.exe"),
                    UseShellExecute = true
                };

                if (!isWindows)
                {
                    startInfo.Arguments = startInfo.FileName + " " + startInfo.Arguments;
                    startInfo.FileName = "mono";
                }

                Process.Start(startInfo);
            }
        }
All Usage Examples Of Jackett.Services.ServiceConfigService::ServiceExists