jellyfin-server/MediaBrowser.Controller/Dto/IDtoService.cs

100 lines
3.7 KiB
C#
Raw Normal View History

2016-02-11 18:29:42 +00:00
using System;
using MediaBrowser.Controller.Entities;
2013-09-04 17:02:19 +00:00
using MediaBrowser.Model.Dto;
using MediaBrowser.Model.Querying;
using System.Collections.Generic;
2016-06-19 06:18:29 +00:00
using System.Threading.Tasks;
2013-09-04 17:02:19 +00:00
namespace MediaBrowser.Controller.Dto
{
/// <summary>
/// Interface IDtoService
/// </summary>
public interface IDtoService
{
/// <summary>
/// Gets the dto id.
/// </summary>
/// <param name="item">The item.</param>
/// <returns>System.String.</returns>
string GetDtoId(BaseItem item);
2014-01-14 20:03:35 +00:00
/// <summary>
/// Attaches the primary image aspect ratio.
/// </summary>
/// <param name="dto">The dto.</param>
/// <param name="item">The item.</param>
2016-01-16 05:01:57 +00:00
void AttachPrimaryImageAspectRatio(IItemDto dto, IHasImages item);
/// <summary>
/// Gets the primary image aspect ratio.
/// </summary>
/// <param name="item">The item.</param>
/// <returns>System.Nullable&lt;System.Double&gt;.</returns>
double? GetPrimaryImageAspectRatio(IHasImages item);
2014-01-14 20:03:35 +00:00
2013-09-04 17:02:19 +00:00
/// <summary>
/// Gets the base item dto.
/// </summary>
/// <param name="item">The item.</param>
/// <param name="fields">The fields.</param>
/// <param name="user">The user.</param>
/// <param name="owner">The owner.</param>
/// <returns>Task{BaseItemDto}.</returns>
2013-09-17 02:44:06 +00:00
BaseItemDto GetBaseItemDto(BaseItem item, List<ItemFields> fields, User user = null, BaseItem owner = null);
2015-04-12 18:58:21 +00:00
/// <summary>
/// Fills the synchronize information.
/// </summary>
2016-02-11 18:29:42 +00:00
/// <param name="tuples">The tuples.</param>
2015-04-12 18:58:21 +00:00
/// <param name="options">The options.</param>
/// <param name="user">The user.</param>
2016-02-11 18:29:42 +00:00
void FillSyncInfo(IEnumerable<Tuple<BaseItem, BaseItemDto>> tuples, DtoOptions options, User user);
2015-04-12 18:58:21 +00:00
2014-11-30 19:01:33 +00:00
/// <summary>
/// Gets the base item dto.
/// </summary>
/// <param name="item">The item.</param>
/// <param name="options">The options.</param>
/// <param name="user">The user.</param>
/// <param name="owner">The owner.</param>
/// <returns>BaseItemDto.</returns>
BaseItemDto GetBaseItemDto(BaseItem item, DtoOptions options, User user = null, BaseItem owner = null);
2015-01-24 19:03:55 +00:00
/// <summary>
/// Gets the base item dtos.
/// </summary>
/// <param name="items">The items.</param>
/// <param name="options">The options.</param>
/// <param name="user">The user.</param>
/// <param name="owner">The owner.</param>
/// <returns>IEnumerable&lt;BaseItemDto&gt;.</returns>
2016-06-19 06:18:29 +00:00
Task<List<BaseItemDto>> GetBaseItemDtos(IEnumerable<BaseItem> items, DtoOptions options, User user = null,
2015-01-24 19:03:55 +00:00
BaseItem owner = null);
2014-11-30 19:01:33 +00:00
2014-03-19 04:59:45 +00:00
/// <summary>
/// Gets the chapter information dto.
/// </summary>
/// <param name="item">The item.</param>
/// <returns>ChapterInfoDto.</returns>
2014-10-12 15:18:26 +00:00
List<ChapterInfoDto> GetChapterInfoDtos(BaseItem item);
2014-03-19 04:59:45 +00:00
2014-07-08 01:41:03 +00:00
/// <summary>
/// Gets the user item data dto.
/// </summary>
/// <param name="data">The data.</param>
/// <returns>UserItemDataDto.</returns>
UserItemDataDto GetUserItemDataDto(UserItemData data);
/// <summary>
/// Gets the item by name dto.
/// </summary>
/// <param name="item">The item.</param>
2014-11-30 19:01:33 +00:00
/// <param name="options">The options.</param>
/// <param name="taggedItems">The tagged items.</param>
/// <param name="user">The user.</param>
/// <returns>BaseItemDto.</returns>
2015-08-15 03:15:25 +00:00
BaseItemDto GetItemByNameDto(BaseItem item, DtoOptions options, List<BaseItem> taggedItems, User user = null);
2013-09-04 17:02:19 +00:00
}
}