using System; using System.Threading.Tasks; using eSuite.WorkBench.Services; using eSuite.WorkBench.WpfHelper; namespace eSuite.WorkBench.Commands; public class LaunchWebUiCommand : AsyncCommandBase { private readonly MainWindowViewModel _mainWindowViewModel; private readonly ICommandsService _commandService; public LaunchWebUiCommand(MainWindowViewModel mainWindowViewModel, ICommandsService commandsService, Action onException, EventHandler addFeedbackMessage) : base(onException) { FeedbackMessage += addFeedbackMessage; _mainWindowViewModel = mainWindowViewModel; _commandService = commandsService; IsEnabled = true; } protected override async Task ExecuteAsync(object parameter) { try { DoFeedbackMessage("Starting WebUi"); await _commandService.LaunchWebUi(); } catch (Exception ex) { DoFeedbackMessage(ex.Message); } finally { DoFeedbackMessage("...finished"); } } }