private async void OnUpdatePrinter(Printer obj) { try { ShowBusyControl(); if (!_settingsService.Settings.Printers.Any(x => string.Compare(x.Name, obj.Name) == 0) && obj.DocumentTypes.Any(x => x.Enabled)) { await _settingsService.AddPrinterAsync(obj); } else if (_settingsService.Settings.Printers.Any(x => string.Compare(x.Name, obj.Name) == 0) && !obj.DocumentTypes.Any(x => x.Enabled)) { await _settingsService.RemovePrinterAsync(obj); } else { await _settingsService.UpdatePrinterAsync(obj); } } catch (Exception e) { _loggingService?.WriteError(e); } finally { HideBusyControl(); } }