aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/IDisplayPreferencesManager.cs
diff options
context:
space:
mode:
authorcrobibero <cody@robibe.ro>2020-08-03 11:24:13 -0600
committercrobibero <cody@robibe.ro>2020-08-03 11:24:13 -0600
commitf915c3e5d9af689a3ffe045c5d495900e562080b (patch)
treedee25d7d92f0f56d12e661261ac382b48f08772b /MediaBrowser.Controller/IDisplayPreferencesManager.cs
parent6a42a48c09b8125e96daa057f755bc67ce7bac37 (diff)
parent5b4863c65b777d178f6573a8a584e2e9bac0d156 (diff)
Merge remote-tracking branch 'upstream/master' into api-migration
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);
+ }
+}