Browse Source

move WebSocket listeners to Jellyfin.Api

crobibero 5 years ago
parent
commit
cfce1dba08

+ 18 - 12
MediaBrowser.Api/System/ActivityLogWebSocketListener.cs → Jellyfin.Api/WebSocketListeners/ActivityLogWebSocketListener.cs

@@ -5,34 +5,35 @@ using MediaBrowser.Model.Activity;
 using MediaBrowser.Model.Events;
 using Microsoft.Extensions.Logging;
 
-namespace MediaBrowser.Api.System
+namespace Jellyfin.Api.WebSocketListeners
 {
     /// <summary>
     /// Class SessionInfoWebSocketListener.
     /// </summary>
     public class ActivityLogWebSocketListener : BasePeriodicWebSocketListener<ActivityLogEntry[], WebSocketListenerState>
     {
-        /// <summary>
-        /// Gets the name.
-        /// </summary>
-        /// <value>The name.</value>
-        protected override string Name => "ActivityLogEntry";
-
         /// <summary>
         /// The _kernel.
         /// </summary>
         private readonly IActivityManager _activityManager;
 
-        public ActivityLogWebSocketListener(ILogger<ActivityLogWebSocketListener> logger, IActivityManager activityManager) : base(logger)
+        /// <summary>
+        /// Initializes a new instance of the <see cref="ActivityLogWebSocketListener"/> class.
+        /// </summary>
+        /// <param name="logger">Instance of the <see cref="ILogger{ActivityLogWebSocketListener}"/> interface.</param>
+        /// <param name="activityManager">Instance of the <see cref="IActivityManager"/> interface.</param>
+        public ActivityLogWebSocketListener(ILogger<ActivityLogWebSocketListener> logger, IActivityManager activityManager)
+            : base(logger)
         {
             _activityManager = activityManager;
             _activityManager.EntryCreated += OnEntryCreated;
         }
 
-        private void OnEntryCreated(object sender, GenericEventArgs<ActivityLogEntry> e)
-        {
-            SendData(true);
-        }
+        /// <summary>
+        /// Gets the name.
+        /// </summary>
+        /// <value>The name.</value>
+        protected override string Name => "ActivityLogEntry";
 
         /// <summary>
         /// Gets the data to send.
@@ -50,5 +51,10 @@ namespace MediaBrowser.Api.System
 
             base.Dispose(dispose);
         }
+
+        private void OnEntryCreated(object sender, GenericEventArgs<ActivityLogEntry> e)
+        {
+            SendData(true);
+        }
     }
 }

+ 34 - 31
MediaBrowser.Api/ScheduledTasks/ScheduledTasksWebSocketListener.cs → Jellyfin.Api/WebSocketListeners/ScheduledTasksWebSocketListener.cs

@@ -6,7 +6,7 @@ using MediaBrowser.Model.Events;
 using MediaBrowser.Model.Tasks;
 using Microsoft.Extensions.Logging;
 
-namespace MediaBrowser.Api.ScheduledTasks
+namespace Jellyfin.Api.WebSocketListeners
 {
     /// <summary>
     /// Class ScheduledTasksWebSocketListener.
@@ -17,42 +17,27 @@ namespace MediaBrowser.Api.ScheduledTasks
         /// Gets or sets the task manager.
         /// </summary>
         /// <value>The task manager.</value>
-        private ITaskManager TaskManager { get; set; }
+        private readonly ITaskManager _taskManager;
 
         /// <summary>
-        /// Gets the name.
-        /// </summary>
-        /// <value>The name.</value>
-        protected override string Name => "ScheduledTasksInfo";
-
-        /// <summary>
-        /// Initializes a new instance of the <see cref="ScheduledTasksWebSocketListener" /> class.
+        /// Initializes a new instance of the <see cref="ScheduledTasksWebSocketListener"/> class.
         /// </summary>
+        /// <param name="logger">Instance of the <see cref="ILogger{ScheduledTasksWebSocketListener}"/> interface.</param>
+        /// <param name="taskManager">Instance of the <see cref="ITaskManager"/> interface.</param>
         public ScheduledTasksWebSocketListener(ILogger<ScheduledTasksWebSocketListener> logger, ITaskManager taskManager)
             : base(logger)
         {
-            TaskManager = taskManager;
+            _taskManager = taskManager;
 
-            TaskManager.TaskExecuting += TaskManager_TaskExecuting;
-            TaskManager.TaskCompleted += TaskManager_TaskCompleted;
+            _taskManager.TaskExecuting += OnTaskExecuting;
+            _taskManager.TaskCompleted += OnTaskCompleted;
         }
 
-        void TaskManager_TaskCompleted(object sender, TaskCompletionEventArgs e)
-        {
-            SendData(true);
-            e.Task.TaskProgress -= Argument_TaskProgress;
-        }
-
-        void TaskManager_TaskExecuting(object sender, GenericEventArgs<IScheduledTaskWorker> e)
-        {
-            SendData(true);
-            e.Argument.TaskProgress += Argument_TaskProgress;
-        }
-
-        void Argument_TaskProgress(object sender, GenericEventArgs<double> e)
-        {
-            SendData(false);
-        }
+        /// <summary>
+        /// Gets the name.
+        /// </summary>
+        /// <value>The name.</value>
+        protected override string Name => "ScheduledTasksInfo";
 
         /// <summary>
         /// Gets the data to send.
@@ -60,18 +45,36 @@ namespace MediaBrowser.Api.ScheduledTasks
         /// <returns>Task{IEnumerable{TaskInfo}}.</returns>
         protected override Task<IEnumerable<TaskInfo>> GetDataToSend()
         {
-            return Task.FromResult(TaskManager.ScheduledTasks
+            return Task.FromResult(_taskManager.ScheduledTasks
                 .OrderBy(i => i.Name)
                 .Select(ScheduledTaskHelpers.GetTaskInfo)
                 .Where(i => !i.IsHidden));
         }
 
+        /// <inheritdoc />
         protected override void Dispose(bool dispose)
         {
-            TaskManager.TaskExecuting -= TaskManager_TaskExecuting;
-            TaskManager.TaskCompleted -= TaskManager_TaskCompleted;
+            _taskManager.TaskExecuting -= OnTaskExecuting;
+            _taskManager.TaskCompleted -= OnTaskCompleted;
 
             base.Dispose(dispose);
         }
+
+        private void OnTaskCompleted(object sender, TaskCompletionEventArgs e)
+        {
+            SendData(true);
+            e.Task.TaskProgress -= OnTaskProgress;
+        }
+
+        private void OnTaskExecuting(object sender, GenericEventArgs<IScheduledTaskWorker> e)
+        {
+            SendData(true);
+            e.Argument.TaskProgress += OnTaskProgress;
+        }
+
+        private void OnTaskProgress(object sender, GenericEventArgs<double> e)
+        {
+            SendData(false);
+        }
     }
 }

+ 1 - 1
MediaBrowser.Api/Sessions/SessionInfoWebSocketListener.cs → Jellyfin.Api/WebSocketListeners/SessionInfoWebSocketListener.cs

@@ -5,7 +5,7 @@ using MediaBrowser.Controller.Net;
 using MediaBrowser.Controller.Session;
 using Microsoft.Extensions.Logging;
 
-namespace MediaBrowser.Api.Sessions
+namespace Jellyfin.Api.WebSocketListeners
 {
     /// <summary>
     /// Class SessionInfoWebSocketListener.