diff options
Diffstat (limited to 'MediaBrowser.Controller/Library/ILibraryManager.cs')
| -rw-r--r-- | MediaBrowser.Controller/Library/ILibraryManager.cs | 559 |
1 files changed, 0 insertions, 559 deletions
diff --git a/MediaBrowser.Controller/Library/ILibraryManager.cs b/MediaBrowser.Controller/Library/ILibraryManager.cs deleted file mode 100644 index 9ef372eb6..000000000 --- a/MediaBrowser.Controller/Library/ILibraryManager.cs +++ /dev/null @@ -1,559 +0,0 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Controller.Resolvers; -using MediaBrowser.Controller.Sorting; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; -using System; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.IO; - -namespace MediaBrowser.Controller.Library -{ - /// <summary> - /// Interface ILibraryManager - /// </summary> - public interface ILibraryManager - { - /// <summary> - /// Resolves the path. - /// </summary> - /// <param name="fileInfo">The file information.</param> - /// <param name="parent">The parent.</param> - /// <returns>BaseItem.</returns> - BaseItem ResolvePath(FileSystemMetadata fileInfo, - Folder parent = null); - - /// <summary> - /// Resolves a set of files into a list of BaseItem - /// </summary> - IEnumerable<BaseItem> ResolvePaths(IEnumerable<FileSystemMetadata> files, - IDirectoryService directoryService, - Folder parent, - LibraryOptions libraryOptions, - string collectionType = null); - - /// <summary> - /// Gets the root folder. - /// </summary> - /// <value>The root folder.</value> - AggregateFolder RootFolder { get; } - - /// <summary> - /// Gets a Person - /// </summary> - /// <param name="name">The name.</param> - /// <returns>Task{Person}.</returns> - Person GetPerson(string name); - - /// <summary> - /// Finds the by path. - /// </summary> - /// <param name="path">The path.</param> - /// <returns>BaseItem.</returns> - BaseItem FindByPath(string path, bool? isFolder); - - /// <summary> - /// Gets the artist. - /// </summary> - /// <param name="name">The name.</param> - /// <returns>Task{Artist}.</returns> - MusicArtist GetArtist(string name); - MusicArtist GetArtist(string name, DtoOptions options); - /// <summary> - /// Gets a Studio - /// </summary> - /// <param name="name">The name.</param> - /// <returns>Task{Studio}.</returns> - Studio GetStudio(string name); - - /// <summary> - /// Gets a Genre - /// </summary> - /// <param name="name">The name.</param> - /// <returns>Task{Genre}.</returns> - Genre GetGenre(string name); - - /// <summary> - /// Gets the genre. - /// </summary> - /// <param name="name">The name.</param> - /// <returns>Task{MusicGenre}.</returns> - MusicGenre GetMusicGenre(string name); - - /// <summary> - /// Gets the game genre. - /// </summary> - /// <param name="name">The name.</param> - /// <returns>Task{GameGenre}.</returns> - GameGenre GetGameGenre(string name); - - /// <summary> - /// Gets a Year - /// </summary> - /// <param name="value">The value.</param> - /// <returns>Task{Year}.</returns> - /// <exception cref="System.ArgumentOutOfRangeException"></exception> - Year GetYear(int value); - - /// <summary> - /// Validate and refresh the People sub-set of the IBN. - /// The items are stored in the db but not loaded into memory until actually requested by an operation. - /// </summary> - /// <param name="cancellationToken">The cancellation token.</param> - /// <param name="progress">The progress.</param> - /// <returns>Task.</returns> - Task ValidatePeople(CancellationToken cancellationToken, IProgress<double> progress); - - /// <summary> - /// Reloads the root media folder - /// </summary> - /// <param name="progress">The progress.</param> - /// <param name="cancellationToken">The cancellation token.</param> - /// <returns>Task.</returns> - Task ValidateMediaLibrary(IProgress<double> progress, CancellationToken cancellationToken); - - /// <summary> - /// Queues the library scan. - /// </summary> - void QueueLibraryScan(); - - void UpdateImages(BaseItem item); - - /// <summary> - /// Gets the default view. - /// </summary> - /// <returns>IEnumerable{VirtualFolderInfo}.</returns> - List<VirtualFolderInfo> GetVirtualFolders(); - - List<VirtualFolderInfo> GetVirtualFolders(bool includeRefreshState); - - /// <summary> - /// Gets the item by id. - /// </summary> - /// <param name="id">The id.</param> - /// <returns>BaseItem.</returns> - BaseItem GetItemById(Guid id); - - /// <summary> - /// Gets the intros. - /// </summary> - /// <param name="item">The item.</param> - /// <param name="user">The user.</param> - /// <returns>IEnumerable{System.String}.</returns> - Task<IEnumerable<Video>> GetIntros(BaseItem item, User user); - - /// <summary> - /// Gets all intro files. - /// </summary> - /// <returns>IEnumerable{System.String}.</returns> - IEnumerable<string> GetAllIntroFiles(); - - /// <summary> - /// Adds the parts. - /// </summary> - /// <param name="rules">The rules.</param> - /// <param name="pluginFolders">The plugin folders.</param> - /// <param name="resolvers">The resolvers.</param> - /// <param name="introProviders">The intro providers.</param> - /// <param name="itemComparers">The item comparers.</param> - /// <param name="postscanTasks">The postscan tasks.</param> - void AddParts(IEnumerable<IResolverIgnoreRule> rules, - IEnumerable<IVirtualFolderCreator> pluginFolders, - IEnumerable<IItemResolver> resolvers, - IEnumerable<IIntroProvider> introProviders, - IEnumerable<IBaseItemComparer> itemComparers, - IEnumerable<ILibraryPostScanTask> postscanTasks); - - /// <summary> - /// Sorts the specified items. - /// </summary> - /// <param name="items">The items.</param> - /// <param name="user">The user.</param> - /// <param name="sortBy">The sort by.</param> - /// <param name="sortOrder">The sort order.</param> - /// <returns>IEnumerable{BaseItem}.</returns> - IEnumerable<BaseItem> Sort(IEnumerable<BaseItem> items, User user, IEnumerable<string> sortBy, SortOrder sortOrder); - IEnumerable<BaseItem> Sort(IEnumerable<BaseItem> items, User user, IEnumerable<Tuple<string, SortOrder>> orderBy); - - /// <summary> - /// Gets the user root folder. - /// </summary> - /// <returns>UserRootFolder.</returns> - Folder GetUserRootFolder(); - - /// <summary> - /// Creates the item. - /// </summary> - void CreateItem(BaseItem item, CancellationToken cancellationToken); - - /// <summary> - /// Creates the items. - /// </summary> - void CreateItems(IEnumerable<BaseItem> items, BaseItem parent, CancellationToken cancellationToken); - - /// <summary> - /// Updates the item. - /// </summary> - void UpdateItem(BaseItem item, ItemUpdateType updateReason, CancellationToken cancellationToken); - - /// <summary> - /// Retrieves the item. - /// </summary> - /// <param name="id">The id.</param> - /// <returns>BaseItem.</returns> - BaseItem RetrieveItem(Guid id); - - bool IsScanRunning { get; } - - /// <summary> - /// Occurs when [item added]. - /// </summary> - event EventHandler<ItemChangeEventArgs> ItemAdded; - - /// <summary> - /// Occurs when [item updated]. - /// </summary> - event EventHandler<ItemChangeEventArgs> ItemUpdated; - /// <summary> - /// Occurs when [item removed]. - /// </summary> - event EventHandler<ItemChangeEventArgs> ItemRemoved; - - /// <summary> - /// Reports the item removed. - /// </summary> - void ReportItemRemoved(BaseItem item, BaseItem parent); - - /// <summary> - /// Finds the type of the collection. - /// </summary> - /// <param name="item">The item.</param> - /// <returns>System.String.</returns> - string GetContentType(BaseItem item); - - /// <summary> - /// Gets the type of the inherited content. - /// </summary> - /// <param name="item">The item.</param> - /// <returns>System.String.</returns> - string GetInheritedContentType(BaseItem item); - - /// <summary> - /// Gets the type of the configured content. - /// </summary> - /// <param name="item">The item.</param> - /// <returns>System.String.</returns> - string GetConfiguredContentType(BaseItem item); - - /// <summary> - /// Gets the type of the configured content. - /// </summary> - /// <param name="path">The path.</param> - /// <returns>System.String.</returns> - string GetConfiguredContentType(string path); - - /// <summary> - /// Normalizes the root path list. - /// </summary> - /// <param name="paths">The paths.</param> - /// <returns>IEnumerable{System.String}.</returns> - List<FileSystemMetadata> NormalizeRootPathList(IEnumerable<FileSystemMetadata> paths); - - /// <summary> - /// Registers the item. - /// </summary> - /// <param name="item">The item.</param> - void RegisterItem(BaseItem item); - - /// <summary> - /// Deletes the item. - /// </summary> - /// <param name="item">The item.</param> - /// <param name="options">The options.</param> - /// <returns>Task.</returns> - Task DeleteItem(BaseItem item, DeleteOptions options); - - /// <summary> - /// Gets the named view. - /// </summary> - /// <param name="user">The user.</param> - /// <param name="name">The name.</param> - /// <param name="parentId">The parent identifier.</param> - /// <param name="viewType">Type of the view.</param> - /// <param name="sortName">Name of the sort.</param> - /// <param name="cancellationToken">The cancellation token.</param> - /// <returns>Task<UserView>.</returns> - UserView GetNamedView(User user, - string name, - string parentId, - string viewType, - string sortName, - CancellationToken cancellationToken); - - /// <summary> - /// Gets the named view. - /// </summary> - /// <param name="user">The user.</param> - /// <param name="name">The name.</param> - /// <param name="viewType">Type of the view.</param> - /// <param name="sortName">Name of the sort.</param> - /// <param name="cancellationToken">The cancellation token.</param> - /// <returns>Task<UserView>.</returns> - UserView GetNamedView(User user, - string name, - string viewType, - string sortName, - CancellationToken cancellationToken); - - /// <summary> - /// Gets the named view. - /// </summary> - /// <param name="name">The name.</param> - /// <param name="viewType">Type of the view.</param> - /// <param name="sortName">Name of the sort.</param> - /// <param name="cancellationToken">The cancellation token.</param> - UserView GetNamedView(string name, - string viewType, - string sortName, - CancellationToken cancellationToken); - - /// <summary> - /// Gets the named view. - /// </summary> - /// <param name="name">The name.</param> - /// <param name="parentId">The parent identifier.</param> - /// <param name="viewType">Type of the view.</param> - /// <param name="sortName">Name of the sort.</param> - /// <param name="uniqueId">The unique identifier.</param> - /// <param name="cancellationToken">The cancellation token.</param> - UserView GetNamedView(string name, - string parentId, - string viewType, - string sortName, - string uniqueId, - CancellationToken cancellationToken); - - /// <summary> - /// Gets the shadow view. - /// </summary> - /// <param name="parent">The parent.</param> - /// <param name="viewType">Type of the view.</param> - /// <param name="sortName">Name of the sort.</param> - /// <param name="cancellationToken">The cancellation token.</param> - /// <returns>Task<UserView>.</returns> - UserView GetShadowView(BaseItem parent, - string viewType, - string sortName, - CancellationToken cancellationToken); - - /// <summary> - /// Determines whether [is video file] [the specified path]. - /// </summary> - /// <param name="path">The path.</param> - /// <returns><c>true</c> if [is video file] [the specified path]; otherwise, <c>false</c>.</returns> - bool IsVideoFile(string path); - - /// <summary> - /// Determines whether [is audio file] [the specified path]. - /// </summary> - /// <param name="path">The path.</param> - /// <returns><c>true</c> if [is audio file] [the specified path]; otherwise, <c>false</c>.</returns> - bool IsAudioFile(string path); - - bool IsAudioFile(string path, LibraryOptions libraryOptions); - bool IsVideoFile(string path, LibraryOptions libraryOptions); - - /// <summary> - /// Gets the season number from path. - /// </summary> - /// <param name="path">The path.</param> - /// <returns>System.Nullable<System.Int32>.</returns> - int? GetSeasonNumberFromPath(string path); - - /// <summary> - /// Fills the missing episode numbers from path. - /// </summary> - /// <param name="episode">The episode.</param> - /// <returns><c>true</c> if XXXX, <c>false</c> otherwise.</returns> - bool FillMissingEpisodeNumbersFromPath(Episode episode); - - /// <summary> - /// Parses the name. - /// </summary> - /// <param name="name">The name.</param> - /// <returns>ItemInfo.</returns> - ItemLookupInfo ParseName(string name); - - /// <summary> - /// Gets the new item identifier. - /// </summary> - /// <param name="key">The key.</param> - /// <param name="type">The type.</param> - /// <returns>Guid.</returns> - Guid GetNewItemId(string key, Type type); - - /// <summary> - /// Finds the trailers. - /// </summary> - /// <param name="owner">The owner.</param> - /// <param name="fileSystemChildren">The file system children.</param> - /// <param name="directoryService">The directory service.</param> - /// <returns>IEnumerable<Trailer>.</returns> - IEnumerable<Video> FindTrailers(BaseItem owner, List<FileSystemMetadata> fileSystemChildren, - IDirectoryService directoryService); - - /// <summary> - /// Finds the extras. - /// </summary> - /// <param name="owner">The owner.</param> - /// <param name="fileSystemChildren">The file system children.</param> - /// <param name="directoryService">The directory service.</param> - /// <returns>IEnumerable<Video>.</returns> - IEnumerable<Video> FindExtras(BaseItem owner, List<FileSystemMetadata> fileSystemChildren, - IDirectoryService directoryService); - - /// <summary> - /// Gets the collection folders. - /// </summary> - /// <param name="item">The item.</param> - /// <returns>IEnumerable<Folder>.</returns> - List<Folder> GetCollectionFolders(BaseItem item); - - List<Folder> GetCollectionFolders(BaseItem item, List<Folder> allUserRootChildren); - - LibraryOptions GetLibraryOptions(BaseItem item); - - /// <summary> - /// Gets the people. - /// </summary> - /// <param name="item">The item.</param> - /// <returns>List<PersonInfo>.</returns> - List<PersonInfo> GetPeople(BaseItem item); - - /// <summary> - /// Gets the people. - /// </summary> - /// <param name="query">The query.</param> - /// <returns>List<PersonInfo>.</returns> - List<PersonInfo> GetPeople(InternalPeopleQuery query); - - /// <summary> - /// Gets the people items. - /// </summary> - /// <param name="query">The query.</param> - /// <returns>List<Person>.</returns> - List<Person> GetPeopleItems(InternalPeopleQuery query); - - /// <summary> - /// Updates the people. - /// </summary> - /// <param name="item">The item.</param> - /// <param name="people">The people.</param> - void UpdatePeople(BaseItem item, List<PersonInfo> people); - - /// <summary> - /// Gets the item ids. - /// </summary> - /// <param name="query">The query.</param> - /// <returns>List<Guid>.</returns> - List<Guid> GetItemIds(InternalItemsQuery query); - - /// <summary> - /// Gets the people names. - /// </summary> - /// <param name="query">The query.</param> - /// <returns>List<System.String>.</returns> - List<string> GetPeopleNames(InternalPeopleQuery query); - - /// <summary> - /// Queries the items. - /// </summary> - /// <param name="query">The query.</param> - /// <returns>QueryResult<BaseItem>.</returns> - QueryResult<BaseItem> QueryItems(InternalItemsQuery query); - - string GetPathAfterNetworkSubstitution(string path, BaseItem ownerItem = null); - - /// <summary> - /// Substitutes the path. - /// </summary> - /// <param name="path">The path.</param> - /// <param name="from">From.</param> - /// <param name="to">To.</param> - /// <returns>System.String.</returns> - string SubstitutePath(string path, string from, string to); - - /// <summary> - /// Converts the image to local. - /// </summary> - /// <param name="item">The item.</param> - /// <param name="image">The image.</param> - /// <param name="imageIndex">Index of the image.</param> - /// <returns>Task.</returns> - Task<ItemImageInfo> ConvertImageToLocal(IHasMetadata item, ItemImageInfo image, int imageIndex); - - /// <summary> - /// Gets the items. - /// </summary> - /// <param name="query">The query.</param> - /// <returns>QueryResult<BaseItem>.</returns> - List<BaseItem> GetItemList(InternalItemsQuery query); - - List<BaseItem> GetItemList(InternalItemsQuery query, bool allowExternalContent); - - /// <summary> - /// Gets the items. - /// </summary> - List<BaseItem> GetItemList(InternalItemsQuery query, List<BaseItem> parents); - - /// <summary> - /// Gets the items result. - /// </summary> - /// <param name="query">The query.</param> - /// <returns>QueryResult<BaseItem>.</returns> - QueryResult<BaseItem> GetItemsResult(InternalItemsQuery query); - - /// <summary> - /// Ignores the file. - /// </summary> - /// <param name="file">The file.</param> - /// <param name="parent">The parent.</param> - /// <returns><c>true</c> if XXXX, <c>false</c> otherwise.</returns> - bool IgnoreFile(FileSystemMetadata file, BaseItem parent); - - Guid GetStudioId(string name); - - Guid GetGenreId(string name); - - Guid GetMusicGenreId(string name); - - Guid GetGameGenreId(string name); - - void AddVirtualFolder(string name, string collectionType, LibraryOptions options, bool refreshLibrary); - void RemoveVirtualFolder(string name, bool refreshLibrary); - void AddMediaPath(string virtualFolderName, MediaPathInfo path); - void UpdateMediaPath(string virtualFolderName, MediaPathInfo path); - void RemoveMediaPath(string virtualFolderName, string path); - - QueryResult<Tuple<BaseItem, ItemCounts>> GetGenres(InternalItemsQuery query); - QueryResult<Tuple<BaseItem, ItemCounts>> GetMusicGenres(InternalItemsQuery query); - QueryResult<Tuple<BaseItem, ItemCounts>> GetGameGenres(InternalItemsQuery query); - QueryResult<Tuple<BaseItem, ItemCounts>> GetStudios(InternalItemsQuery query); - QueryResult<Tuple<BaseItem, ItemCounts>> GetArtists(InternalItemsQuery query); - QueryResult<Tuple<BaseItem, ItemCounts>> GetAlbumArtists(InternalItemsQuery query); - QueryResult<Tuple<BaseItem, ItemCounts>> GetAllArtists(InternalItemsQuery query); - - int GetCount(InternalItemsQuery query); - } -}
\ No newline at end of file |
