From 1c17399fd294075868e811d809b9e9111fb98290 Mon Sep 17 00:00:00 2001
From: Jan-Niclas Struewer <j.n.struewer@gmail.com>
Date: Tue, 12 Dec 2023 16:00:14 +0100
Subject: [PATCH] marked cookie type as optional

---
 .../repository/controller/RepositoryController.kt    | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

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 e955926f..82bc8f9e 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
@@ -135,14 +135,18 @@ class RepositoryController(
 
     @GetMapping(ApiPaths.REPOSITORY_TOOL_RUN)
     suspend fun getToolRunForRepository(
-        @CookieValue(name = "gitlabIdToken", required = false) gitlabCookie: String,
+        @CookieValue(name = "gitlabIdToken", required = false) gitlabCookie: String?,
         @PathVariable id: Long
     ): ToolRunResponseDto {
         logger.info("Cookie value $gitlabCookie")
 
-        val isProjectMember = jwtService.getContentIfValid(gitlabCookie)?.let {
-            gitlabApi.userIsProjectMember(projectId = id, gitlabUserId = it.gitlabId)
-        } ?: false
+        val isProjectMember = if (gitlabCookie != null) {
+            jwtService.getContentIfValid(gitlabCookie)?.let {
+                gitlabApi.userIsProjectMember(projectId = id, gitlabUserId = it.gitlabId)
+            } ?: false
+        } else {
+            false
+        }
 
         logger.info("Get repository with id $id")
         val repositoryEntity = this.repositoryService.findRepoById(id) ?: throw ResponseStatusException(
-- 
GitLab