< Summary - Jellyfin

Information
Class: Emby.Server.Implementations.ScheduledTasks.Triggers.StartupTrigger
Assembly: Emby.Server.Implementations
File(s): /srv/git/jellyfin/Emby.Server.Implementations/ScheduledTasks/Triggers/StartupTrigger.cs
Line coverage
100%
Covered lines: 4
Uncovered lines: 0
Coverable lines: 4
Total lines: 54
Line coverage: 100%
Branch coverage
100%
Covered branches: 2
Total branches: 2
Branch coverage: 100%
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%11100%
Stop()100%11100%
OnTriggered()100%22100%

File(s)

/srv/git/jellyfin/Emby.Server.Implementations/ScheduledTasks/Triggers/StartupTrigger.cs

#LineLine coverage
 1using System;
 2using System.Threading.Tasks;
 3using MediaBrowser.Model.Tasks;
 4using Microsoft.Extensions.Logging;
 5
 6namespace Emby.Server.Implementations.ScheduledTasks.Triggers
 7{
 8    /// <summary>
 9    /// Class StartupTaskTrigger.
 10    /// </summary>
 11    public sealed class StartupTrigger : ITaskTrigger
 12    {
 13        private const int DelayMs = 3000;
 14
 15        /// <summary>
 16        /// Initializes a new instance of the <see cref="StartupTrigger"/> class.
 17        /// </summary>
 18        /// <param name="taskOptions">The options of this task.</param>
 19        public StartupTrigger(TaskOptions taskOptions)
 20        {
 21            TaskOptions = taskOptions;
 6622        }
 23
 24        /// <inheritdoc />
 25        public event EventHandler<EventArgs>? Triggered;
 26
 27        /// <inheritdoc />
 28        public TaskOptions TaskOptions { get; }
 29
 30        /// <inheritdoc />
 31        public async void Start(TaskResult? lastResult, ILogger logger, string taskName, bool isApplicationStartup)
 32        {
 33            if (isApplicationStartup)
 34            {
 35                await Task.Delay(DelayMs).ConfigureAwait(false);
 36
 37                OnTriggered();
 38            }
 39        }
 40
 41        /// <inheritdoc />
 42        public void Stop()
 43        {
 13544        }
 45
 46        /// <summary>
 47        /// Called when [triggered].
 48        /// </summary>
 49        private void OnTriggered()
 50        {
 6051            Triggered?.Invoke(this, EventArgs.Empty);
 352        }
 53    }
 54}