public PlaylistDto Create(PlaylistDto playlistDto) { PlaylistDto savedPlaylistDto; using (ITransaction transaction = Session.BeginTransaction()) { User user = UserManager.Get(playlistDto.UserId); Playlist playlist = new Playlist(playlistDto.Id); playlistDto.SetPatchableProperties(playlist); user.AddPlaylist(playlist); List<PlaylistItem> playlistItems = new List<PlaylistItem>(); foreach (PlaylistItemDto dto in playlistDto.Items) { PlaylistItem playlistItem = new PlaylistItem(dto.Id, dto.Title, dto.Cid, dto.Song.Id, dto.Song.Type, dto.Song.Title, dto.Song.Duration, dto.Song.Author); dto.SetPatchableProperties(playlistItem); playlistItems.Add(playlistItem); } playlist.AddItems(playlistItems); PlaylistManager.Save(playlist); savedPlaylistDto = PlaylistDto.Create(playlist); transaction.Commit(); } return savedPlaylistDto; }
public PlaylistDto Create(PlaylistDto playlistDto) { PlaylistDto savedPlaylistDto; using (ITransaction transaction = Session.BeginTransaction()) { User user = UserManager.Get(playlistDto.UserId); Playlist playlist = new Playlist(playlistDto.Id, playlistDto.Sequence, playlistDto.Title); user.AddPlaylist(playlist); playlist.AddItems(playlistDto.Items.Select(dto => new PlaylistItem(dto.Id, dto.Sequence, dto.Title, dto.Cid, dto.Song.Id, dto.Song.Type, dto.Song.Title, dto.Song.Duration, dto.Song.Author))); // Make sure the playlist has been setup properly before it is cascade-saved through the User. playlist.ValidateAndThrow(); PlaylistManager.Save(playlist); savedPlaylistDto = PlaylistDto.Create(playlist); transaction.Commit(); } return savedPlaylistDto; }
/// <summary> /// Generate a PlaylistDto which has the User as its parent. /// </summary> /// <returns></returns> public PlaylistDto CreatePlaylistDto(Guid userIdOverride) { var playlistDto = new PlaylistDto { UserId = userIdOverride }; return playlistDto; }
public void PatchPlaylist_TitleNotProvided_TitleNotModified() { User user = Helpers.CreateUser(); const double newSequence = 5; PlaylistDto playlistDto = new PlaylistDto { Sequence = newSequence }; Playlist playlist = user.Playlists.First(); string originalPlaylistTitle = playlist.Title; PlaylistController.Patch(playlist.Id, playlistDto); Assert.AreEqual(playlist.Title, originalPlaylistTitle); Assert.AreEqual(playlist.Sequence, newSequence); }
public void PatchPlaylist_SequenceNotProvided_SequenceNotModified() { User user = Helpers.CreateUser(); const string newTitle = "Hello World"; PlaylistDto playlistDto = new PlaylistDto { Title = newTitle }; Playlist playlist = user.Playlists.First(); double originalPlaylistSequence = playlist.Sequence; PlaylistController.Patch(playlist.Id, playlistDto); Assert.AreEqual(playlist.Sequence, originalPlaylistSequence); Assert.AreEqual(playlist.Title, newTitle); }
public static PlaylistDto Create(Playlist playlist) { PlaylistDto playlistDto = Mapper.Map <Playlist, PlaylistDto>(playlist); return(playlistDto); }
public void Patch(Guid id, PlaylistDto playlistDto) { using (ITransaction transaction = Session.BeginTransaction()) { Playlist playlist = PlaylistManager.Get(id); playlistDto.SetPatchableProperties(playlist); PlaylistManager.Update(playlist); transaction.Commit(); } }
public void UpdateTitle(PlaylistDto playlistDto) { using (ITransaction transaction = Session.BeginTransaction()) { PlaylistManager.UpdateTitle(playlistDto.Id, playlistDto.Title); transaction.Commit(); } }
/// <summary> /// Generate a PlaylistDto which has the User as its parent. /// </summary> /// <returns></returns> public PlaylistDto CreatePlaylistDto(Guid userIdOverride, string title) { var playlistDto = new PlaylistDto { UserId = userIdOverride, Title = title }; return playlistDto; }