Added AudioInfo to DTOBaseItem

This commit is contained in:
LukePulverenti Luke Pulverenti luke pulverenti 2012-08-20 08:09:42 -04:00
parent d776238e6b
commit da23355fcc
4 changed files with 36 additions and 4 deletions

View File

@ -20,8 +20,8 @@ namespace MediaBrowser.Api
return Kernel.Instance.GetItemById(guid);
}
public async static Task<DTOBaseItem> GetDTOBaseItem(BaseItem item, User user,
bool includeChildren = true,
public async static Task<DTOBaseItem> GetDTOBaseItem(BaseItem item, User user,
bool includeChildren = true,
bool includePeople = true)
{
DTOBaseItem dto = new DTOBaseItem();
@ -102,7 +102,22 @@ namespace MediaBrowser.Api
dto.IsRoot = folder.IsRoot;
dto.IsVirtualFolder = folder is VirtualFolder;
}
Audio audio = item as Audio;
if (audio != null)
{
dto.AudioInfo = new AudioInfo()
{
Album = audio.Album,
AlbumArtist = audio.AlbumArtist,
Artist = audio.Artist,
BitRate = audio.BitRate,
Channels = audio.Channels,
Composer = audio.Composer
};
}
return dto;
}
@ -112,7 +127,7 @@ namespace MediaBrowser.Api
if (item.Studios != null)
{
IEnumerable<Studio> entities = await Task.WhenAll<Studio>(item.Studios.Select(c => Kernel.Instance.ItemController.GetStudio(c)));
dto.Studios = item.Studios.Select(s =>
{
BaseItemStudio baseItemStudio = new BaseItemStudio();

View File

@ -0,0 +1,14 @@

namespace MediaBrowser.Model.DTO
{
public class AudioInfo
{
public int BitRate { get; set; }
public int Channels { get; set; }
public string Artist { get; set; }
public string Album { get; set; }
public string AlbumArtist { get; set; }
public string Composer { get; set; }
}
}

View File

@ -90,6 +90,8 @@ namespace MediaBrowser.Model.DTO
public ItemSpecialCounts SpecialCounts { get; set; }
public AudioInfo AudioInfo { get; set; }
public bool IsType(Type type)
{
return IsType(type.Name);

View File

@ -32,6 +32,7 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Compile Include="DTO\AudioInfo.cs" />
<Compile Include="DTO\DTOBaseItem.cs" />
<Compile Include="Entities\Audio.cs" />
<Compile Include="Entities\BaseEntity.cs" />