Skip to content

Commit 47d2cb1

Browse files
committed
Created common logger Log and updated usages.
1 parent 278f43c commit 47d2cb1

File tree

5 files changed

+35
-13
lines changed

5 files changed

+35
-13
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package com.developersbreach.kotlindictionarymultiplatform
2+
3+
import co.touchlab.kermit.Logger
4+
5+
6+
object Log {
7+
fun d(tag: String, message: String) {
8+
Logger.d(message, tag = tag)
9+
}
10+
11+
fun i(tag: String, message: String) {
12+
Logger.i(message, tag = tag)
13+
}
14+
15+
fun w(tag: String, message: String) {
16+
Logger.w(message, tag = tag)
17+
}
18+
19+
fun e(tag: String, message: String, throwable: Throwable? = null) {
20+
Logger.e(message, throwable, tag = tag)
21+
}
22+
}

composeApp/src/commonMain/kotlin/com/developersbreach/kotlindictionarymultiplatform/core/KtorHttpClient.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.developersbreach.kotlindictionarymultiplatform.core
22

3-
import co.touchlab.kermit.Logger
3+
import com.developersbreach.kotlindictionarymultiplatform.Log
44
import com.developersbreach.kotlindictionarymultiplatform.data.detail.ChatCompletionRequest
55
import com.developersbreach.kotlindictionarymultiplatform.data.detail.ChatCompletionResponse
66
import com.developersbreach.kotlindictionarymultiplatform.data.detail.ChatMessage
@@ -116,11 +116,11 @@ object KtorHttpClient {
116116
}
117117

118118
val text = response.bodyAsText()
119-
Logger.i("RawResponse") { "RAW RESPONSE:\n$text" }
119+
Log.i("RawResponse", "RAW RESPONSE:\n$text")
120120

121121
// Parse response
122122
val chatResp = json.decodeFromString(ChatCompletionResponse.serializer(), text)
123-
Logger.i("ChatResponse") { "$chatResp" }
123+
Log.i("ChatResponse", "$chatResp")
124124
val funcCall = chatResp.choices?.first()?.message?.functionCall ?: error("No function call in response")
125125

126126
// The arguments field is a JSON string: parse and decode into our DTO

composeApp/src/commonMain/kotlin/com/developersbreach/kotlindictionarymultiplatform/ui/screens/detail/DetailViewModel.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import androidx.lifecycle.SavedStateHandle
44
import androidx.lifecycle.ViewModel
55
import androidx.lifecycle.viewModelScope
66
import androidx.navigation.toRoute
7-
import co.touchlab.kermit.Logger
7+
import com.developersbreach.kotlindictionarymultiplatform.Log
88
import com.developersbreach.kotlindictionarymultiplatform.data.detail.KotlinTopicDetails
99
import com.developersbreach.kotlindictionarymultiplatform.core.KtorHttpClient
1010
import kotlinx.coroutines.flow.MutableStateFlow
@@ -30,11 +30,11 @@ class DetailViewModel(
3030
viewModelScope.launch {
3131
try {
3232
val topic = KtorHttpClient.generateTopicDetails(topicId, API_KEY)
33-
Logger.i("DetailViewModel") { "Fetched details: $topic" }
33+
Log.i("DetailViewModel", "Fetched details: $topic")
3434
_state.value = topic
35-
Logger.i("DetailViewModel") { "State updated with topic: $topic" }
35+
Log.i("DetailViewModel", "State updated with topic: $topic")
3636
} catch (e: Exception) {
37-
Logger.e("DetailViewModel", e) { "Error fetching topic: ${e.message}" }
37+
Log.e("DetailViewModel", "Error fetching topic: ${e.message}", e)
3838
}
3939
}
4040
}

composeApp/src/commonMain/kotlin/com/developersbreach/kotlindictionarymultiplatform/ui/screens/topic/TopicScreen.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import androidx.compose.runtime.collectAsState
1414
import androidx.compose.runtime.getValue
1515
import androidx.compose.ui.Modifier
1616
import androidx.compose.ui.unit.dp
17-
import co.touchlab.kermit.Logger
17+
import com.developersbreach.kotlindictionarymultiplatform.Log
1818
import com.developersbreach.kotlindictionarymultiplatform.data.topic.model.Topic
1919

2020
@Composable
@@ -31,7 +31,7 @@ fun TopicScreen(
3131
) {
3232
items(topics) { topic ->
3333
TopicItem(topic = topic, onClick = {
34-
Logger.i("TopicScreen") { "Topic clicked: ${topic.name}" }
34+
Log.i("TopicScreen", "Topic clicked: ${topic.name}")
3535
onTopicClick(topic.name)
3636
})
3737
}
@@ -43,7 +43,7 @@ fun TopicItem(
4343
topic: Topic,
4444
onClick: () -> Unit,
4545
) {
46-
Logger.i("TopicItem") { "Rendering topic item: ${topic.name}" }
46+
Log.i("TopicItem", "Rendering topic item: ${topic.name}")
4747

4848
Card(
4949
elevation = 4.dp,

composeApp/src/commonMain/kotlin/com/developersbreach/kotlindictionarymultiplatform/ui/screens/topic/TopicViewModel.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package com.developersbreach.kotlindictionarymultiplatform.ui.screens.topic
22

33
import androidx.lifecycle.ViewModel
44
import androidx.lifecycle.viewModelScope
5-
import co.touchlab.kermit.Logger
5+
import com.developersbreach.kotlindictionarymultiplatform.Log
66
import com.developersbreach.kotlindictionarymultiplatform.data.topic.model.Topic
77
import com.developersbreach.kotlindictionarymultiplatform.data.topic.repository.TopicRepository
88
import kotlinx.coroutines.flow.MutableStateFlow
@@ -22,10 +22,10 @@ class TopicViewModel : ViewModel() {
2222
viewModelScope.launch {
2323
try {
2424
val topics = TopicRepository.getTopics()
25-
Logger.i("TopicFetch") { "Successfully fetched topics: $topics" }
25+
Log.i("TopicFetch", "Successfully fetched topics: $topics")
2626
_topics.value = topics
2727
} catch (e: Exception) {
28-
Logger.e("TopicFetch", e) { "Error fetching topics: ${e.message}" }
28+
Log.e("TopicFetch", "Error fetching topics: ${e.message}", e)
2929
}
3030
}
3131
}

0 commit comments

Comments
 (0)