From 52ec076def51e83d7d48f9ff981f36528a761fd8 Mon Sep 17 00:00:00 2001 From: Jan-Niclas Struewer <j.n.struewer@gmail.com> Date: Thu, 14 Dec 2023 09:59:28 +0100 Subject: [PATCH] Updated visualization consent path --- .../fraunhofer/iem/dataprovider/configuration/ApiPaths.kt | 2 +- .../repository/controller/RepositoryController.kt | 7 +++++-- .../dataprovider/repository/dto/RepositoryConsentDto.kt | 2 +- .../dataprovider/repository/service/RepositoryService.kt | 6 ++++-- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/main/kotlin/de/fraunhofer/iem/dataprovider/configuration/ApiPaths.kt b/src/main/kotlin/de/fraunhofer/iem/dataprovider/configuration/ApiPaths.kt index 188d2b26..aa70c7e0 100644 --- a/src/main/kotlin/de/fraunhofer/iem/dataprovider/configuration/ApiPaths.kt +++ b/src/main/kotlin/de/fraunhofer/iem/dataprovider/configuration/ApiPaths.kt @@ -18,6 +18,6 @@ object ApiPaths { const val REPOSITORY_ID = "$REPOSITORY/{id}" const val REPOSITORY_TOOL_RUN = "$REPOSITORY/{id}/toolrun" - const val REPOSITORY_UPDATE_CONSENT = "$REPOSITORY/consent" + const val REPOSITORY_UPDATE_CONSENT = "$REPOSITORY/{id}/consent" const val REPOSITORY_VALIDATE_USER = "$REPOSITORY/{id}/validateUser" } diff --git a/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/controller/RepositoryController.kt b/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/controller/RepositoryController.kt index 04190660..8e0941fb 100644 --- a/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/controller/RepositoryController.kt +++ b/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/controller/RepositoryController.kt @@ -158,8 +158,11 @@ class RepositoryController( } @PostMapping(ApiPaths.REPOSITORY_UPDATE_CONSENT) - suspend fun updateRepositoryConsent(@RequestBody repositoryConsentDto: RepositoryConsentDto) { - repositoryService.updateVisualizationConsent(repositoryConsentDto) + suspend fun updateRepositoryConsent( + @PathVariable id: Long, + @RequestBody repositoryConsentDto: RepositoryConsentDto + ) { + repositoryService.updateVisualizationConsent(id, repositoryConsentDto) } @PostMapping(ApiPaths.REPOSITORY_VALIDATE_USER) diff --git a/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/dto/RepositoryConsentDto.kt b/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/dto/RepositoryConsentDto.kt index 36fdc4a6..a9851d3b 100644 --- a/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/dto/RepositoryConsentDto.kt +++ b/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/dto/RepositoryConsentDto.kt @@ -1,3 +1,3 @@ package de.fraunhofer.iem.dataprovider.repository.dto -data class RepositoryConsentDto(val consent: Boolean, val projectId: Long) +data class RepositoryConsentDto(val consent: Boolean) diff --git a/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/service/RepositoryService.kt b/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/service/RepositoryService.kt index 2d1bc0b0..9b7c683f 100644 --- a/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/service/RepositoryService.kt +++ b/src/main/kotlin/de/fraunhofer/iem/dataprovider/repository/service/RepositoryService.kt @@ -7,6 +7,7 @@ import de.fraunhofer.iem.dataprovider.repository.dto.RepositoryCreateDto import de.fraunhofer.iem.dataprovider.repository.entity.RepositoryEntity import de.fraunhofer.iem.dataprovider.repository.repository.RepositoryRepository import org.springframework.stereotype.Service +import org.springframework.transaction.annotation.Transactional @Service class RepositoryService( @@ -20,6 +21,7 @@ class RepositoryService( * Either creates or returns a repository entity based upon its * opencode repository id. */ + @Transactional fun getOrCreate(gitRepository: RepositoryCreateDto): RepositoryEntity { logger.info("Checking if repository with ${gitRepository.id} exists") var repo = repositoryRepository.findByProjectId(gitRepository.id) @@ -45,8 +47,8 @@ class RepositoryService( return repositoryRepository.findAll() } - fun updateVisualizationConsent(repositoryConsentDto: RepositoryConsentDto) { - val repo = findRepoById(repositoryConsentDto.projectId) + fun updateVisualizationConsent(projectId: Long, repositoryConsentDto: RepositoryConsentDto) { + val repo = findRepoById(projectId) if (repo != null) { repo.visualizationConsent = repositoryConsentDto.consent logger.info("Updated visualization consent $repositoryConsentDto") -- GitLab