using System.Threading.Tasks; using Emby.Server.Implementations.Browser; using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Plugins; using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.EntryPoints { /// /// Class StartupWizard. /// public class StartupWizard : IServerEntryPoint { /// /// The app host. /// private readonly IServerApplicationHost _appHost; /// /// The user manager. /// private readonly ILogger _logger; private IServerConfigurationManager _config; /// /// Initializes a new instance of the class. /// /// The application host. /// The logger. /// The configuration manager. public StartupWizard(IServerApplicationHost appHost, ILogger logger, IServerConfigurationManager config) { _appHost = appHost; _logger = logger; _config = config; } /// public Task RunAsync() { if (!_appHost.CanLaunchWebBrowser) { return Task.CompletedTask; } if (!_config.Configuration.IsStartupWizardCompleted) { BrowserLauncher.OpenWebApp(_appHost); } else if (_config.Configuration.AutoRunWebApp) { var options = ((ApplicationHost)_appHost).StartupOptions; if (!options.NoAutoRunWebApp) { BrowserLauncher.OpenWebApp(_appHost); } } return Task.CompletedTask; } /// public void Dispose() { } } }