示例#1
0
    public async Task DeleteVideosNotExistOnVimeoFromDatabase(AppendOnlyStringList?messages)
    {
        var spec   = new ArchiveVideoWithoutThumbnailSpec();
        var videos = await _repositoryArchiveVideo.ListAsync(spec);

        foreach (var video in videos)
        {
            try
            {
                var response = await _getVideoService.ExecuteAsync(video.VideoId);

                if (response?.Data != null && response.Data.IsPlayable == false)
                {
                    await _deleteVideoService.ExecuteAsync(video.VideoId);

                    messages?.Append($"Video {video.Id} deleted from vimeo as it does not exist on vimeo.");
                }
                if (response?.Data == null || response?.Data.IsPlayable == false)
                {
                    await _repositoryArchiveVideo.DeleteAsync(video);

                    messages?.Append($"Video {video.VideoId} deleted as it does not exist on vimeo.");
                }
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, $"Error on Delete Video {video.VideoId}: {ex.Message}");
            }
        }
    }
示例#2
0
    public async Task <HttpStatusCode> DeleteTestFile(string id)
    {
        var response = await _deleteVideoService
                       .ExecuteAsync(id);

        return(response.Code);
    }
示例#3
0
    public async Task <IActionResult> OnGetAsync(string id)
    {
        if (string.IsNullOrEmpty(id))
        {
            return(NotFound());
        }

        var video = await _getVideoService.ExecuteAsync(id);

        if (video?.Data == null)
        {
            await _deleteVideoService.ExecuteAsync(id);

            return(RedirectToPage("./Index"));
        }
        VideoToDelete = _mapper.Map <VideoModel>(video.Data);

        return(Page());
    }
    public async Task <IActionResult> DeleteVideoThAsync([FromRoute] string vimeoVideoId)
    {
        var apiKey = Request.Headers[Constants.ConfigKeys.ApiKey];

        if (apiKey != _expectedApiKey)
        {
            return(Unauthorized());
        }

        var spec       = new ArchiveVideoByVideoIdSpec(vimeoVideoId);
        var existVideo = await _repository.GetBySpecAsync(spec);

        if (existVideo != null)
        {
            await _repository.DeleteAsync(existVideo);
        }

        await _deleteVideoService.ExecuteAsync(vimeoVideoId);

        return(Ok());
    }
示例#5
0
    private async Task deleteAllVimeoVideosAsync()
    {
        HttpResponse <DataPaged <Video> > allVideos;
        var videosToDelete = new List <Video>();
        var pageNumber     = 1;

        do
        {
            var getAllRequest = new GetAllVideosRequest(ServiceConstants.ME, pageNumber);
            allVideos = await _getAllVideosService.ExecuteAsync(getAllRequest);

            if (allVideos != null && allVideos.Data != null)
            {
                videosToDelete.AddRange(allVideos.Data.Data);
            }
            pageNumber++;
        } while (allVideos != null && allVideos.Data != null);

        foreach (var video in videosToDelete)
        {
            await _deleteVideoService.ExecuteAsync(video.Id);
        }
    }