< Summary - Jellyfin

Information
Class: Jellyfin.LiveTv.IO.ExclusiveLiveStream
Assembly: Jellyfin.LiveTv
File(s): /srv/git/jellyfin/src/Jellyfin.LiveTv/IO/ExclusiveLiveStream.cs
Line coverage
0%
Covered lines: 0
Uncovered lines: 11
Coverable lines: 11
Total lines: 61
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%
get_TunerHostId()100%210%
Close()100%210%
GetStream()100%210%
Open(...)100%210%
Dispose()100%210%

File(s)

/srv/git/jellyfin/src/Jellyfin.LiveTv/IO/ExclusiveLiveStream.cs

#LineLine coverage
 1#nullable disable
 2
 3#pragma warning disable CA1711
 4#pragma warning disable CS1591
 5
 6using System;
 7using System.Globalization;
 8using System.IO;
 9using System.Threading;
 10using System.Threading.Tasks;
 11using MediaBrowser.Controller.Library;
 12using MediaBrowser.Model.Dto;
 13
 14namespace Jellyfin.LiveTv.IO
 15{
 16    public sealed class ExclusiveLiveStream : ILiveStream
 17    {
 18        private readonly Func<Task> _closeFn;
 19
 20        public ExclusiveLiveStream(MediaSourceInfo mediaSource, Func<Task> closeFn)
 21        {
 022            MediaSource = mediaSource;
 023            EnableStreamSharing = false;
 024            _closeFn = closeFn;
 025            ConsumerCount = 1;
 026            UniqueId = Guid.NewGuid().ToString("N", CultureInfo.InvariantCulture);
 027        }
 28
 29        public int ConsumerCount { get; set; }
 30
 31        public string OriginalStreamId { get; set; }
 32
 033        public string TunerHostId => null;
 34
 35        public bool EnableStreamSharing { get; set; }
 36
 37        public MediaSourceInfo MediaSource { get; set; }
 38
 39        public string UniqueId { get; }
 40
 41        public Task Close()
 42        {
 043            return _closeFn();
 44        }
 45
 46        public Stream GetStream()
 47        {
 048            throw new NotSupportedException();
 49        }
 50
 51        public Task Open(CancellationToken openCancellationToken)
 52        {
 053            return Task.CompletedTask;
 54        }
 55
 56        /// <inheritdoc />
 57        public void Dispose()
 58        {
 059        }
 60    }
 61}