From 898f42b0c8cc95b6b382467810339b3661ce8a9f Mon Sep 17 00:00:00 2001 From: IgorAlexeyv Date: Tue, 29 Oct 2024 20:54:49 +0300 Subject: [PATCH 1/2] dz1+dz2 --- src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt | 6 +++--- .../kotlin/ru/kotlin/homework/network/NetworkResponse.kt | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt b/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt index a5f33c5..f9875dc 100644 --- a/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt +++ b/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt @@ -15,9 +15,9 @@ sealed class ApiException(message: String) : Throwable(message) { data object UnknownException: ApiException("Unknown exception") } -class ErrorLogger { +class ErrorLogger { - val errors = mutableListOf>() + private val errors = mutableListOf>() fun log(response: NetworkResponse<*, E>) { if (response is Failure) { @@ -27,7 +27,7 @@ class ErrorLogger { fun dumpLog() { errors.forEach { (date, error) -> - println("Error at $date: ${error.message}") + println("Error at $date: ${error.toString()}") } } } diff --git a/src/main/kotlin/ru/kotlin/homework/network/NetworkResponse.kt b/src/main/kotlin/ru/kotlin/homework/network/NetworkResponse.kt index 3018c40..f35dbc2 100644 --- a/src/main/kotlin/ru/kotlin/homework/network/NetworkResponse.kt +++ b/src/main/kotlin/ru/kotlin/homework/network/NetworkResponse.kt @@ -9,19 +9,19 @@ import java.time.LocalDateTime /** * Network result */ -sealed class NetworkResponse { +sealed class NetworkResponse { val responseDateTime: LocalDateTime = LocalDateTime.now() } /** * Network success */ -data class Success(val resp: T): NetworkResponse() +data class Success(val resp: T): NetworkResponse() /** * Network error */ -data class Failure(val error: R): NetworkResponse() +data class Failure(val error: R): NetworkResponse() val s1 = Success("Message") val r11: NetworkResponse = s1 From 6e1b39b91aa1ab1d60d631c41994cd3bba0c6730 Mon Sep 17 00:00:00 2001 From: IgorAlexeyv Date: Tue, 29 Oct 2024 22:16:38 +0300 Subject: [PATCH 2/2] dz 1,2 and 3 --- .../kotlin/ru/kotlin/homework/network/NetworkLogger.kt | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt b/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt index f9875dc..39c06a8 100644 --- a/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt +++ b/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt @@ -30,6 +30,10 @@ class ErrorLogger { println("Error at $date: ${error.toString()}") } } + + fun dump(): List> { + return errors + } } fun processThrowables(logger: ErrorLogger) { @@ -60,5 +64,10 @@ fun main() { println("Processing Api:") processApiErrors(logger) + + println("Getting error list:") + val list: List> = logger.dump() + list.forEach(){ (date, error) -> + println("Error at $date: ${error.toString()}")} }