aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/IDisplayPreferencesManager.cs
diff options
context:
space:
mode:
authorBond-009 <bond.009@outlook.com>2020-08-01 21:51:49 +0200
committerGitHub <noreply@github.com>2020-08-01 21:51:49 +0200
commitb7421db5fea50e684334806a4ecc8d9f943d754a (patch)
tree8ce432f3d05bfaf146dfa1b8a5b49cf42ee520a7 /MediaBrowser.Controller/IDisplayPreferencesManager.cs
parent7621c8b8065b2c96a5886445c30a0b553a90e807 (diff)
parentad32800504c08812212f7f39403924fdee635e5d (diff)
Merge pull request #3578 from barronpm/displaypreferences-efcore
Migrate Display Preferences to EF Core
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);
+ }
+}