示例#1
0
        public async Task ExecuteGenerationAsync(PlaylistDefinition playlistDefinition)
        {
            PlaylistGenerationContext context = await _generationContextBuilder.CreateContextAsync(playlistDefinition);

            await _syncWorker.SyncTracksAsync(context);

            await _syncWorker.SyncSortingAsync(context);
        }
        public async Task ExecuteGenerationAsync(string playlistDefinitionId)
        {
            PlaylistDefinition playlistDef = await _playlistDefinitionRepo.GetByIdAsync(playlistDefinitionId);

            if (playlistDef == null)
            {
                return;
            }

            await _playlistDefinitionRepo.LoadDetailsAsync(playlistDef);

            await _playlistGenerator.ExecuteGenerationAsync(playlistDef);
        }
        public async Task SaveAsync(PlaylistDefinition playlistDefinition)
        {
            playlistDefinition.PlaylistSources = playlistDefinition.PlaylistSources?
                                                 .OrderBy(o => o.OrderNr)
                                                 .Select((o, i) =>
            {
                o.OrderNr = i + 1;

                return(o);
            })
                                                 .ToList();

            playlistDefinition.OrderInstructions = playlistDefinition.OrderInstructions?
                                                   .OrderBy(o => o.OrderNr)
                                                   .Select((o, i) =>
            {
                o.OrderNr = i + 1;

                return(o);
            })
                                                   .ToList();

            await _playlistDefinitionRepo.SaveAsync(playlistDefinition);
        }