diff options
Diffstat (limited to 'MediaBrowser.Controller/Entities')
| -rw-r--r-- | MediaBrowser.Controller/Entities/BaseItem.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/ChildDefinition.cs | 22 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Folder.cs | 46 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Movies/Movie.cs | 2 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Video.cs | 2 |
5 files changed, 16 insertions, 62 deletions
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs index 695ea2583..d13e69fce 100644 --- a/MediaBrowser.Controller/Entities/BaseItem.cs +++ b/MediaBrowser.Controller/Entities/BaseItem.cs @@ -663,7 +663,7 @@ namespace MediaBrowser.Controller.Entities return LibraryManager.ResolvePaths<Trailer>(files, null).Select(video => { // Try to retrieve it from the db. If we don't find it, use the resolved version - var dbItem = LibraryManager.RetrieveItem(video.Id, typeof(Trailer)) as Trailer; + var dbItem = LibraryManager.RetrieveItem(video.Id) as Trailer; if (dbItem != null) { @@ -724,7 +724,7 @@ namespace MediaBrowser.Controller.Entities return LibraryManager.ResolvePaths<Audio.Audio>(files, null).Select(audio => { // Try to retrieve it from the db. If we don't find it, use the resolved version - var dbItem = LibraryManager.RetrieveItem(audio.Id, typeof(Audio.Audio)) as Audio.Audio; + var dbItem = LibraryManager.RetrieveItem(audio.Id) as Audio.Audio; if (dbItem != null) { @@ -782,7 +782,7 @@ namespace MediaBrowser.Controller.Entities return LibraryManager.ResolvePaths<Video>(files, null).Select(item => { // Try to retrieve it from the db. If we don't find it, use the resolved version - var dbItem = LibraryManager.RetrieveItem(item.Id, typeof(Video)) as Video; + var dbItem = LibraryManager.RetrieveItem(item.Id) as Video; if (dbItem != null) { diff --git a/MediaBrowser.Controller/Entities/ChildDefinition.cs b/MediaBrowser.Controller/Entities/ChildDefinition.cs deleted file mode 100644 index e8d68b5ea..000000000 --- a/MediaBrowser.Controller/Entities/ChildDefinition.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; - -namespace MediaBrowser.Controller.Entities -{ - /// <summary> - /// Class ChildDefinition - /// </summary> - public class ChildDefinition - { - /// <summary> - /// Gets or sets the item id. - /// </summary> - /// <value>The item id.</value> - public Guid ItemId { get; set; } - - /// <summary> - /// Gets or sets the type. - /// </summary> - /// <value>The type.</value> - public string Type { get; set; } - } -} 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; } diff --git a/MediaBrowser.Controller/Entities/Movies/Movie.cs b/MediaBrowser.Controller/Entities/Movies/Movie.cs index b4eadfd3f..22972df0c 100644 --- a/MediaBrowser.Controller/Entities/Movies/Movie.cs +++ b/MediaBrowser.Controller/Entities/Movies/Movie.cs @@ -136,7 +136,7 @@ namespace MediaBrowser.Controller.Entities.Movies return LibraryManager.ResolvePaths<Video>(files, null).Select(video => { // Try to retrieve it from the db. If we don't find it, use the resolved version - var dbItem = LibraryManager.RetrieveItem(video.Id, typeof(Video)) as Video; + var dbItem = LibraryManager.RetrieveItem(video.Id) as Video; if (dbItem != null) { diff --git a/MediaBrowser.Controller/Entities/Video.cs b/MediaBrowser.Controller/Entities/Video.cs index 1fef52fa2..0116f5d42 100644 --- a/MediaBrowser.Controller/Entities/Video.cs +++ b/MediaBrowser.Controller/Entities/Video.cs @@ -211,7 +211,7 @@ namespace MediaBrowser.Controller.Entities return LibraryManager.ResolvePaths<Video>(files, null).Select(video => { // Try to retrieve it from the db. If we don't find it, use the resolved version - var dbItem = LibraryManager.RetrieveItem(video.Id, typeof(Video)) as Video; + var dbItem = LibraryManager.RetrieveItem(video.Id) as Video; if (dbItem != null) { |
