aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/IDisplayPreferencesManager.cs
diff options
context:
space:
mode:
authorBond-009 <bond.009@outlook.com>2020-08-20 16:40:03 +0200
committerGitHub <noreply@github.com>2020-08-20 16:40:03 +0200
commit5160e627f18fb4a763eaa77b836d20486e55c5e9 (patch)
tree5fb90ba0ee4d217384d31d1828b6a42a74168a45 /MediaBrowser.Controller/IDisplayPreferencesManager.cs
parent3588ee5229b76bca9417813e208e86492e06d609 (diff)
parent250e351613e0eed7977c8cdad4a9078927458feb (diff)
Merge branch 'master' into feature/ffmpeg-version-check
Diffstat (limited to 'MediaBrowser.Controller/IDisplayPreferencesManager.cs')
-rw-r--r--MediaBrowser.Controller/IDisplayPreferencesManager.cs49
1 files changed, 49 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/IDisplayPreferencesManager.cs b/MediaBrowser.Controller/IDisplayPreferencesManager.cs
new file mode 100644
index 000000000..b6bfed3e5
--- /dev/null
+++ b/MediaBrowser.Controller/IDisplayPreferencesManager.cs
@@ -0,0 +1,49 @@
+using System;
+using System.Collections.Generic;
+using Jellyfin.Data.Entities;
+
+namespace MediaBrowser.Controller
+{
+ /// <summary>
+ /// Manages the storage and retrieval of display preferences.
+ /// </summary>
+ public interface IDisplayPreferencesManager
+ {
+ /// <summary>
+ /// Gets the display preferences for the user and client.
+ /// </summary>
+ /// <param name="userId">The user's id.</param>
+ /// <param name="client">The client string.</param>
+ /// <returns>The associated display preferences.</returns>
+ DisplayPreferences GetDisplayPreferences(Guid userId, string client);
+
+ /// <summary>
+ /// Gets the default item display preferences for the user and client.
+ /// </summary>
+ /// <param name="userId">The user id.</param>
+ /// <param name="itemId">The item id.</param>
+ /// <param name="client">The client string.</param>
+ /// <returns>The item display preferences.</returns>
+ ItemDisplayPreferences GetItemDisplayPreferences(Guid userId, Guid itemId, string client);
+
+ /// <summary>
+ /// Gets all of the item display preferences for the user and client.
+ /// </summary>
+ /// <param name="userId">The user id.</param>
+ /// <param name="client">The client string.</param>
+ /// <returns>A list of item display preferences.</returns>
+ IList<ItemDisplayPreferences> ListItemDisplayPreferences(Guid userId, string client);
+
+ /// <summary>
+ /// Saves changes to the provided display preferences.
+ /// </summary>
+ /// <param name="preferences">The display preferences to save.</param>
+ void SaveChanges(DisplayPreferences preferences);
+
+ /// <summary>
+ /// Saves changes to the provided item display preferences.
+ /// </summary>
+ /// <param name="preferences">The item display preferences to save.</param>
+ void SaveChanges(ItemDisplayPreferences preferences);
+ }
+}