diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-04-02 13:37:49 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-04-02 13:37:49 -0400 |
| commit | b4dd8a210629bc74445f106e2379b986af9520c5 (patch) | |
| tree | 69dfb0fb565f3e2f47fad029fda11e24d75b54c6 /MediaBrowser.Controller/Entities | |
| parent | dcc057f3242fb44a15006e5b13a2c7a2662dd2cd (diff) | |
moved displaypreferences to usermanager to solve concurrency issues
Diffstat (limited to 'MediaBrowser.Controller/Entities')
| -rw-r--r-- | MediaBrowser.Controller/Entities/Folder.cs | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs index 5a61844c2..ce4d62925 100644 --- a/MediaBrowser.Controller/Entities/Folder.cs +++ b/MediaBrowser.Controller/Entities/Folder.cs @@ -74,109 +74,6 @@ namespace MediaBrowser.Controller.Entities } } - /// <summary> - /// The _display prefs - /// </summary> - private IEnumerable<DisplayPreferences> _displayPreferences; - /// <summary> - /// The _display prefs initialized - /// </summary> - private bool _displayPreferencesInitialized; - /// <summary> - /// The _display prefs sync lock - /// </summary> - private object _displayPreferencesSyncLock = new object(); - /// <summary> - /// Gets the display prefs. - /// </summary> - /// <value>The display prefs.</value> - [IgnoreDataMember] - public IEnumerable<DisplayPreferences> DisplayPreferences - { - get - { - // Call ToList to exhaust the stream because we'll be iterating over this multiple times - LazyInitializer.EnsureInitialized(ref _displayPreferences, ref _displayPreferencesInitialized, ref _displayPreferencesSyncLock, () => Kernel.Instance.DisplayPreferencesRepository.RetrieveDisplayPreferences(this).ToList()); - return _displayPreferences; - } - private set - { - _displayPreferences = value; - - if (value == null) - { - _displayPreferencesInitialized = false; - } - } - } - - /// <summary> - /// Gets the display prefs. - /// </summary> - /// <param name="user">The user.</param> - /// <param name="createIfNull">if set to <c>true</c> [create if null].</param> - /// <returns>DisplayPreferences.</returns> - /// <exception cref="System.ArgumentNullException"></exception> - public DisplayPreferences GetDisplayPreferences(User user, bool createIfNull) - { - if (user == null) - { - throw new ArgumentNullException(); - } - - if (DisplayPreferences == null) - { - if (!createIfNull) - { - return null; - } - - AddOrUpdateDisplayPreferences(user, new DisplayPreferences { UserId = user.Id }); - } - - var data = DisplayPreferences.FirstOrDefault(u => u.UserId == user.Id); - - if (data == null && createIfNull) - { - data = new DisplayPreferences { UserId = user.Id }; - AddOrUpdateDisplayPreferences(user, data); - } - - return data; - } - - /// <summary> - /// Adds the or update display prefs. - /// </summary> - /// <param name="user">The user.</param> - /// <param name="data">The data.</param> - /// <exception cref="System.ArgumentNullException"></exception> - public void AddOrUpdateDisplayPreferences(User user, DisplayPreferences data) - { - if (user == null) - { - throw new ArgumentNullException(); - } - - if (data == null) - { - throw new ArgumentNullException(); - } - - data.UserId = user.Id; - - if (DisplayPreferences == null) - { - DisplayPreferences = new[] { data }; - } - else - { - var list = DisplayPreferences.Where(u => u.UserId != user.Id).ToList(); - list.Add(data); - DisplayPreferences = list; - } - } - #region Indexing /// <summary> |
