From 426b8fe7ec2678c1960c8e6ec22df7f9ceaa977b Mon Sep 17 00:00:00 2001
From: William Walker <wnwalker@ucsc.edu>
Date: Wed, 4 Dec 2024 12:10:46 -0800
Subject: [PATCH] wip

---
 .../kotlin/edu/ucsc/its/temerity/core/Temerity.kt     | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/temerity/src/commonMain/kotlin/edu/ucsc/its/temerity/core/Temerity.kt b/temerity/src/commonMain/kotlin/edu/ucsc/its/temerity/core/Temerity.kt
index 196d116..d732782 100644
--- a/temerity/src/commonMain/kotlin/edu/ucsc/its/temerity/core/Temerity.kt
+++ b/temerity/src/commonMain/kotlin/edu/ucsc/its/temerity/core/Temerity.kt
@@ -69,6 +69,7 @@ import io.ktor.client.statement.HttpResponse
 import io.ktor.http.URLProtocol
 import io.ktor.util.cio.toByteArray
 import io.ktor.utils.io.ByteReadChannel
+import java.io.FileWriter
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.async
 import kotlinx.coroutines.awaitAll
@@ -117,7 +118,7 @@ public class Temerity internal constructor(
     // TODO: Use this as cache4k expiration time
     public val DEFAULT_CACHE_EXPIRATION: Duration = 15.minutes
     internal const val DEFAULT_MINIMUM_THREAD_COUNT: Int = 2
-
+    
     internal fun createLogger(tag: String?, supportKtxNotebook: Boolean = false): co.touchlab.kermit.Logger =
       co.touchlab.kermit.Logger(
         config = loggerConfigInit(
@@ -252,7 +253,7 @@ public class Temerity internal constructor(
       when (exception) {
         is SerializationException -> {
           // TODO: Implement platform API version checking
-          get<KermitLogger>().d { "Returned JSON object: ${exception.message}" }
+          get<KermitLogger>{ parametersOf("TemerityLib") }.d { "Returned JSON object: ${exception.message}" }
           error("Encountered error decoding response from platform API. You likely need to choose a Temerity release that supports the API version implemented by your instance. \nPlatform API response data : $apiResponsePayload")
         }
 
@@ -261,8 +262,10 @@ public class Temerity internal constructor(
     }
   }
 
-  public override suspend fun getUsers(): List<User> =
-    decodeResponseCatching(platformApi.getUsers().executeApiResponse<String>())
+  public override suspend fun getUsers(): List<User> {
+    val userRequest = platformApi.getUsers()
+    return decodeResponseCatching(userRequest.executeApiResponse<String>())
+  }
 
   public override suspend fun getUser(userId: Long): User =
     getUsers().first { it.userId == userId }
-- 
GitLab