aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/Library/DisplayPreferencesManager.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-06-18 15:16:27 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-06-18 15:16:27 -0400
commit13f6da1bf43e592264afbf48f0c99015435b8c7e (patch)
tree519343b21a721a5728c967a12fda71f2d1389aca /MediaBrowser.Server.Implementations/Library/DisplayPreferencesManager.cs
parent6de9e2491f2180d36c07e19b19e8b9e8de8f7ab0 (diff)
removed chapters from baseitem
Diffstat (limited to 'MediaBrowser.Server.Implementations/Library/DisplayPreferencesManager.cs')
-rw-r--r--MediaBrowser.Server.Implementations/Library/DisplayPreferencesManager.cs99
1 files changed, 0 insertions, 99 deletions
diff --git a/MediaBrowser.Server.Implementations/Library/DisplayPreferencesManager.cs b/MediaBrowser.Server.Implementations/Library/DisplayPreferencesManager.cs
deleted file mode 100644
index 57a9c9d78..000000000
--- a/MediaBrowser.Server.Implementations/Library/DisplayPreferencesManager.cs
+++ /dev/null
@@ -1,99 +0,0 @@
-using MediaBrowser.Controller.Library;
-using MediaBrowser.Controller.Persistence;
-using MediaBrowser.Model.Entities;
-using MediaBrowser.Model.Logging;
-using System;
-using System.Collections.Concurrent;
-using System.Threading;
-using System.Threading.Tasks;
-
-namespace MediaBrowser.Server.Implementations.Library
-{
- /// <summary>
- /// Class DisplayPreferencesManager
- /// </summary>
- public class DisplayPreferencesManager : IDisplayPreferencesManager
- {
- /// <summary>
- /// The _logger
- /// </summary>
- private readonly ILogger _logger;
-
- /// <summary>
- /// The _display preferences
- /// </summary>
- private readonly ConcurrentDictionary<Guid, Task<DisplayPreferences>> _displayPreferences = new ConcurrentDictionary<Guid, Task<DisplayPreferences>>();
-
- /// <summary>
- /// Gets the active user repository
- /// </summary>
- /// <value>The display preferences repository.</value>
- public IDisplayPreferencesRepository Repository { get; set; }
-
- /// <summary>
- /// Initializes a new instance of the <see cref="DisplayPreferencesManager"/> class.
- /// </summary>
- /// <param name="logger">The logger.</param>
- public DisplayPreferencesManager(ILogger logger)
- {
- _logger = logger;
- }
-
- /// <summary>
- /// Gets the display preferences.
- /// </summary>
- /// <param name="displayPreferencesId">The display preferences id.</param>
- /// <returns>DisplayPreferences.</returns>
- public Task<DisplayPreferences> GetDisplayPreferences(Guid displayPreferencesId)
- {
- return _displayPreferences.GetOrAdd(displayPreferencesId, keyName => RetrieveDisplayPreferences(displayPreferencesId));
- }
-
- /// <summary>
- /// Retrieves the display preferences.
- /// </summary>
- /// <param name="displayPreferencesId">The display preferences id.</param>
- /// <returns>DisplayPreferences.</returns>
- private async Task<DisplayPreferences> RetrieveDisplayPreferences(Guid displayPreferencesId)
- {
- var displayPreferences = await Repository.GetDisplayPreferences(displayPreferencesId).ConfigureAwait(false);
-
- return displayPreferences ?? new DisplayPreferences { Id = displayPreferencesId };
- }
-
- /// <summary>
- /// Saves display preferences for an item
- /// </summary>
- /// <param name="displayPreferences">The display preferences.</param>
- /// <param name="cancellationToken">The cancellation token.</param>
- /// <returns>Task.</returns>
- public async Task SaveDisplayPreferences(DisplayPreferences displayPreferences, CancellationToken cancellationToken)
- {
- if (displayPreferences == null)
- {
- throw new ArgumentNullException("displayPreferences");
- }
- if (displayPreferences.Id == Guid.Empty)
- {
- throw new ArgumentNullException("displayPreferences.Id");
- }
-
- try
- {
- await Repository.SaveDisplayPreferences(displayPreferences,
- cancellationToken).ConfigureAwait(false);
-
- var newValue = Task.FromResult(displayPreferences);
-
- // Once it succeeds, put it into the dictionary to make it available to everyone else
- _displayPreferences.AddOrUpdate(displayPreferences.Id, newValue, delegate { return newValue; });
- }
- catch (Exception ex)
- {
- _logger.ErrorException("Error saving display preferences", ex);
-
- throw;
- }
- }
- }
-}