예제 #1
0
        public async Task Upload(string repoUrl)
        {
            var repo = vcsRepositoryRepository.GetRepository(repoUrl);

            if (repo != null)
            {
                await Clients.Caller.SendAsync("Error", "Current repository already exist.");

                return;
            }

            if (!await gitService.IfExistsAsync(repoUrl.GetGitRepositoryName()))
            {
                await Clients.Caller.SendAsync("Error", "Not found Github repository with this url.");

                return;
            }

            await Clients.Caller.SendAsync("ShowUploadInProgress", repoUrl);

            var result = await gitService.CloneAsync(repoUrl);

            if (result)
            {
                await repositoryWorker.CreateRepositoryAsync(repoUrl);

                await Clients.Caller.SendAsync("HideUploadInProgress");
            }
            else
            {
                await Clients.Caller.SendAsync("Error", "Unexpected error!");
            }
        }
예제 #2
0
        public async Task <IActionResult> Update(int id)
        {
            var repo = repositoryRepository.GetRepository(id);

            if (repo == null)
            {
                return(RedirectToAction(nameof(Index)));
            }

            await repositoryWorker.UpdateRepositoryAsync(repo);

            return(View(nameof(Info), repositoryRepository.FirstOrDefault(id)));
        }