diff options
| author | David <daullmer@gmail.com> | 2020-08-01 16:21:48 +0200 |
|---|---|---|
| committer | David <daullmer@gmail.com> | 2020-08-01 16:21:48 +0200 |
| commit | 3f0c0e2d0d920871e74ada6f3a1f1e17d8ce0c28 (patch) | |
| tree | 0f8579b1bbb3ebbab1a46db96cb48a0b8abd3f9e /Jellyfin.Api/Helpers/TranscodingJobHelper.cs | |
| parent | b717ecd5e0986143099cafeb1c3e154b72d04512 (diff) | |
Implement IDisposable
Diffstat (limited to 'Jellyfin.Api/Helpers/TranscodingJobHelper.cs')
| -rw-r--r-- | Jellyfin.Api/Helpers/TranscodingJobHelper.cs | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/Jellyfin.Api/Helpers/TranscodingJobHelper.cs b/Jellyfin.Api/Helpers/TranscodingJobHelper.cs index 13d8c26db..38bd7efee 100644 --- a/Jellyfin.Api/Helpers/TranscodingJobHelper.cs +++ b/Jellyfin.Api/Helpers/TranscodingJobHelper.cs @@ -30,7 +30,7 @@ namespace Jellyfin.Api.Helpers /// <summary> /// Transcoding job helpers. /// </summary> - public class TranscodingJobHelper + public class TranscodingJobHelper : IDisposable { /// <summary> /// The active transcoding jobs. @@ -46,14 +46,12 @@ namespace Jellyfin.Api.Helpers private readonly EncodingHelper _encodingHelper; private readonly IFileSystem _fileSystem; private readonly IIsoManager _isoManager; - private readonly ILogger<TranscodingJobHelper> _logger; private readonly IMediaEncoder _mediaEncoder; private readonly IMediaSourceManager _mediaSourceManager; private readonly IServerConfigurationManager _serverConfigurationManager; private readonly ISessionManager _sessionManager; private readonly ILoggerFactory _loggerFactory; - private readonly IFileSystem _fileSystem; /// <summary> /// Initializes a new instance of the <see cref="TranscodingJobHelper"/> class. @@ -861,5 +859,28 @@ namespace Jellyfin.Api.Helpers _fileSystem.DeleteFile(file); } } + + /// <summary> + /// Dispose transcoding job helper. + /// </summary> + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + /// <summary> + /// Dispose throttler. + /// </summary> + /// <param name="disposing">Disposing.</param> + protected virtual void Dispose(bool disposing) + { + if (disposing) + { + _loggerFactory.Dispose(); + _sessionManager!.PlaybackProgress -= OnPlaybackProgress; + _sessionManager!.PlaybackStart -= OnPlaybackProgress; + } + } } } |
