diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-03-01 14:39:46 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-03-01 14:39:46 -0500 |
| commit | 076a07a54661da993b7ecefd5e294b11b8d90873 (patch) | |
| tree | 008d8c36e8201cae90b6c8232e4016d9b212df36 /MediaBrowser.Server.Implementations/Library/LibraryManager.cs | |
| parent | 177cc41e3dfd7b2fc5045a183634059260585f20 (diff) | |
optimize FindByPath
Diffstat (limited to 'MediaBrowser.Server.Implementations/Library/LibraryManager.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Library/LibraryManager.cs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs index 333b1fbe9..f0ee364b4 100644 --- a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs +++ b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs @@ -788,6 +788,23 @@ namespace MediaBrowser.Server.Implementations.Library return _userRootFolder; } + public BaseItem FindByPath(string path) + { + var query = new InternalItemsQuery + { + Path = path + }; + + var items = GetItemIds(query).Select(GetItemById).Where(i => i != null).ToArray(); + + if (items.Length == 1) + { + return items[0]; + } + + return RootFolder.FindByPath(path); + } + /// <summary> /// Gets a Person /// </summary> |
