< Summary - Jellyfin

Information
Class: Jellyfin.Server.Implementations.Events.Consumers.Updates.PluginUpdatedLogger
Assembly: Jellyfin.Server.Implementations
File(s): /srv/git/jellyfin/Jellyfin.Server.Implementations/Events/Consumers/Updates/PluginUpdatedLogger.cs
Line coverage
0%
Covered lines: 0
Uncovered lines: 3
Coverable lines: 3
Total lines: 51
Line coverage: 0%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Coverage history

Coverage history 0 25 50 75 100

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%210%

File(s)

/srv/git/jellyfin/Jellyfin.Server.Implementations/Events/Consumers/Updates/PluginUpdatedLogger.cs

#LineLine coverage
 1using System;
 2using System.Globalization;
 3using System.Threading.Tasks;
 4using Jellyfin.Data.Entities;
 5using MediaBrowser.Controller.Events;
 6using MediaBrowser.Controller.Events.Updates;
 7using MediaBrowser.Model.Activity;
 8using MediaBrowser.Model.Globalization;
 9using MediaBrowser.Model.Notifications;
 10
 11namespace Jellyfin.Server.Implementations.Events.Consumers.Updates
 12{
 13    /// <summary>
 14    /// Creates an entry in the activity log when a plugin is updated.
 15    /// </summary>
 16    public class PluginUpdatedLogger : IEventConsumer<PluginUpdatedEventArgs>
 17    {
 18        private readonly ILocalizationManager _localizationManager;
 19        private readonly IActivityManager _activityManager;
 20
 21        /// <summary>
 22        /// Initializes a new instance of the <see cref="PluginUpdatedLogger"/> class.
 23        /// </summary>
 24        /// <param name="localizationManager">The localization manager.</param>
 25        /// <param name="activityManager">The activity manager.</param>
 26        public PluginUpdatedLogger(ILocalizationManager localizationManager, IActivityManager activityManager)
 27        {
 028            _localizationManager = localizationManager;
 029            _activityManager = activityManager;
 030        }
 31
 32        /// <inheritdoc />
 33        public async Task OnEvent(PluginUpdatedEventArgs eventArgs)
 34        {
 35            await _activityManager.CreateAsync(new ActivityLog(
 36                string.Format(
 37                    CultureInfo.InvariantCulture,
 38                    _localizationManager.GetLocalizedString("PluginUpdatedWithName"),
 39                    eventArgs.Argument.Name),
 40                NotificationType.PluginUpdateInstalled.ToString(),
 41                Guid.Empty)
 42            {
 43                ShortOverview = string.Format(
 44                    CultureInfo.InvariantCulture,
 45                    _localizationManager.GetLocalizedString("VersionNumber"),
 46                    eventArgs.Argument.Version),
 47                Overview = eventArgs.Argument.Changelog
 48            }).ConfigureAwait(false);
 49        }
 50    }
 51}