/// <summary> /// Aplica os dados do aplicativo para: Shortcut /// </summary> /// <param name="dataUpdatedNotification">Notificação de atualização de dados.</param> /// <param name="cancellationToken">Token de cancelamento.</param> /// <returns>Task</returns> private async Task ApplyDataApplicationShortcut(DataUpdated dataUpdatedNotification, CancellationToken cancellationToken) { var request = dataUpdatedNotification.Request; var dataApplicationShortcut = request.Data.Application.Shortcut; var shortcut = dataApplicationShortcut.ToShortcutDescription(); try { var registered = _shortcut.Register(dataApplicationShortcut); Log.Debug("Shortcut key \"{Shortcut}\" registered: {Registered}", shortcut, registered); await _messageBus.Send(new UserNotificationPost( new NotificationMessage( (registered ? Resources.Notification_ShortcutDefined : dataApplicationShortcut != Keys.None ? Resources.Notification_ShortcutInvalid : Resources.Notification_ShortcutRemoved).QueryString(shortcut), registered || dataApplicationShortcut == Keys.None), request), cancellationToken); } catch (Exception exception) { Log.Error(exception, "Error registering shortcut key: {Shortcut}", shortcut); await _messageBus.Send(new UserNotificationPost( new NotificationMessage(exception.Message, false), request), cancellationToken); } }