diff --git a/src/main/kotlin/de/fraunhofer/iem/dataprovider/StartUpHandler.kt b/src/main/kotlin/de/fraunhofer/iem/dataprovider/StartUpHandler.kt index 847bdb5ca6211165ec2834c65e4d55647d256f64..c3f509b87c8ca35d0ab7a73d36b44ce398d2d4ae 100644 --- a/src/main/kotlin/de/fraunhofer/iem/dataprovider/StartUpHandler.kt +++ b/src/main/kotlin/de/fraunhofer/iem/dataprovider/StartUpHandler.kt @@ -1,15 +1,12 @@ package de.fraunhofer.iem.dataprovider import de.fraunhofer.iem.dataprovider.configuration.InitialProjects -import de.fraunhofer.iem.dataprovider.gitlab.controller.GitlabController import de.fraunhofer.iem.dataprovider.logger.getLogger -import de.fraunhofer.iem.dataprovider.repository.controller.RepositoryController +import de.fraunhofer.iem.dataprovider.repository.dto.RepositoryConsentDto import de.fraunhofer.iem.dataprovider.repository.service.RepositoryService import de.fraunhofer.iem.dataprovider.tool.service.ToolService import de.fraunhofer.iem.dataprovider.toolRun.service.ToolRunService -import kotlinx.coroutines.CoroutineScope -import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.withContext +import kotlinx.coroutines.* import org.springframework.boot.context.event.ApplicationReadyEvent import org.springframework.context.event.EventListener import org.springframework.stereotype.Component @@ -20,8 +17,6 @@ class StartUpHandler( val initialProjects: InitialProjects, val toolService: ToolService, val repositoryService: RepositoryService, - val gitlabController: GitlabController, - val repositoryController: RepositoryController ) { private val logger = getLogger(javaClass) val coroutineScope = CoroutineScope(Dispatchers.Default) @@ -34,24 +29,21 @@ class StartUpHandler( logger.info("Creating tools in db") toolService.createAllTools() } -// -// gitlabController.repoChanged(RepositoryChangedRequestDto(159)) -// repositoryController.updateRepositoryConsent(159, RepositoryConsentDto(true)) -// logger.info("Loading initial projects $initialProjects") + logger.info("Loading initial projects $initialProjects") -// val jobs = initialProjects.projectIds.mapNotNull { projectId -> -// return@mapNotNull if (projectId >= 0) { -// coroutineScope.launch { -// toolRunService.createToolRunForRepository(projectId).join() -// repositoryService.updateVisualizationConsent(projectId, RepositoryConsentDto(true)) -// } -// } else { -// null -// } -// } -// coroutineScope.launch { -// jobs.joinAll() -// } + val jobs = initialProjects.projectIds.mapNotNull { projectId -> + return@mapNotNull if (projectId >= 0) { + coroutineScope.launch { + toolRunService.createToolRunForRepository(projectId).join() + repositoryService.updateVisualizationConsent(projectId, RepositoryConsentDto(true)) + } + } else { + null + } + } + coroutineScope.launch { + jobs.joinAll() + } } } 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 55e5ea3bd6edcc2bbfcdbd5351b40b766c66569b..51850a7a91aa8d7fef56c4ed0d123234293faaed 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 @@ -90,9 +90,11 @@ class RepositoryService( @Transactional(readOnly = true, propagation = Propagation.REQUIRES_NEW) fun getToolRunByProjectId(projectId: Long): ToolRunDto? { toolRunRepository.findFirstByRepository_ProjectIdOrderByCreatedAtDesc(projectId)?.let { toolRunEntity -> - return ToolRunDto.getDtoFromEntity( - toolRunEntity - ) + if (toolRunEntity.repository.visualizationConsent) { + return ToolRunDto.getDtoFromEntity( + toolRunEntity + ) + } } return null }