diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-06-26 12:08:16 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-06-26 12:08:16 -0400 |
| commit | 6025a89235f0677e38992abee49e914b47e762cb (patch) | |
| tree | eb584963d579027ffbce725dad55fa9ca302dce2 /MediaBrowser.Controller/Entities/Folder.cs | |
| parent | 934584313eb1ce97ba26eba343dc1b3cd53f36dc (diff) | |
read 3d format from xml
Diffstat (limited to 'MediaBrowser.Controller/Entities/Folder.cs')
| -rw-r--r-- | MediaBrowser.Controller/Entities/Folder.cs | 46 |
1 files changed, 11 insertions, 35 deletions
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs index 4689a4358..f6b1194bd 100644 --- a/MediaBrowser.Controller/Entities/Folder.cs +++ b/MediaBrowser.Controller/Entities/Folder.cs @@ -3,7 +3,6 @@ using MediaBrowser.Common.Progress; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Localization; using MediaBrowser.Controller.Persistence; -using MediaBrowser.Controller.Reflection; using MediaBrowser.Controller.Resolvers; using MediaBrowser.Model.Entities; using System; @@ -22,8 +21,6 @@ namespace MediaBrowser.Controller.Entities /// </summary> public class Folder : BaseItem { - private static readonly TypeMapper TypeMapper = new TypeMapper(); - /// <summary> /// Gets a value indicating whether this instance is folder. /// </summary> @@ -118,12 +115,7 @@ namespace MediaBrowser.Controller.Entities await LibraryManager.CreateItem(item, cancellationToken).ConfigureAwait(false); - await ItemRepository.SaveChildren(Id, _children.Values.ToList().Select(i => new ChildDefinition - { - ItemId = i.Id, - Type = i.GetType().FullName - - }), cancellationToken).ConfigureAwait(false); + await ItemRepository.SaveChildren(Id, _children.Values.ToList().Select(i => i.Id), cancellationToken).ConfigureAwait(false); } /// <summary> @@ -161,12 +153,7 @@ namespace MediaBrowser.Controller.Entities LibraryManager.ReportItemRemoved(item); - return ItemRepository.SaveChildren(Id, _children.Values.ToList().Select(i => new ChildDefinition - { - ItemId = i.Id, - Type = i.GetType().FullName - - }), cancellationToken); + return ItemRepository.SaveChildren(Id, _children.Values.ToList().Select(i => i.Id), cancellationToken); } #region Indexing @@ -729,12 +716,7 @@ namespace MediaBrowser.Controller.Entities } } - await ItemRepository.SaveChildren(Id, _children.Values.ToList().Select(i => new ChildDefinition - { - ItemId = i.Id, - Type = i.GetType().FullName - - }), cancellationToken).ConfigureAwait(false); + await ItemRepository.SaveChildren(Id, _children.Values.ToList().Select(i => i.Id), cancellationToken).ConfigureAwait(false); //force the indexes to rebuild next time IndexCache.Clear(); @@ -872,26 +854,20 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <param name="child">The child.</param> /// <returns>BaseItem.</returns> - private BaseItem RetrieveChild(ChildDefinition child) + private BaseItem RetrieveChild(Guid child) { - var type = child.Type; + var item = LibraryManager.RetrieveItem(child); - var itemType = TypeMapper.GetType(type); - - if (itemType == null) + if (item != null) { - Logger.Error("Cannot find type {0}. Probably belongs to plug-in that is no longer loaded.", type); - return null; - } - - var item = LibraryManager.RetrieveItem(child.ItemId, itemType); + if (item is IByReferenceItem) + { + return LibraryManager.GetOrAddByReferenceItem(item); + } - if (item is IByReferenceItem) - { - return LibraryManager.GetOrAddByReferenceItem(item); + item.Parent = this; } - item.Parent = this; return item; } |
