From 1896429eadcfa2425824da4a4a0980094d832913 Mon Sep 17 00:00:00 2001 From: AT Date: Tue, 3 Dec 2024 21:57:09 +0300 Subject: [PATCH 1/3] Fixed NetworkResponse --- .../kotlin/ru/kotlin/homework/network/NetworkResponse.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/kotlin/ru/kotlin/homework/network/NetworkResponse.kt b/src/main/kotlin/ru/kotlin/homework/network/NetworkResponse.kt index 3018c40..45d7641 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 5d4e039789eebc1b0f5ae8a952c32dc592e7fe34 Mon Sep 17 00:00:00 2001 From: AT Date: Tue, 3 Dec 2024 22:00:41 +0300 Subject: [PATCH 2/3] Fixed NetworkLogger --- .../kotlin/ru/kotlin/homework/network/NetworkLogger.kt | 7 +++---- 1 file changed, 3 insertions(+), 4 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..553d4d6 100644 --- a/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt +++ b/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt @@ -12,12 +12,11 @@ import java.time.LocalDateTime sealed class ApiException(message: String) : Throwable(message) { data object NotAuthorized : ApiException("Not authorized") data object NetworkException : ApiException("Not connected") - data object UnknownException: ApiException("Unknown exception") + data object UnknownException : ApiException("Unknown exception") } -class ErrorLogger { - - val errors = mutableListOf>() +class ErrorLogger { + private val errors = mutableListOf>() fun log(response: NetworkResponse<*, E>) { if (response is Failure) { From 5ed05ee5bbb235d4d425b285304b0ab4e8fb42a7 Mon Sep 17 00:00:00 2001 From: AT Date: Tue, 3 Dec 2024 22:03:42 +0300 Subject: [PATCH 3/3] Added dump() function --- src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt b/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt index 553d4d6..59be8d3 100644 --- a/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt +++ b/src/main/kotlin/ru/kotlin/homework/network/NetworkLogger.kt @@ -15,7 +15,7 @@ sealed class ApiException(message: String) : Throwable(message) { data object UnknownException : ApiException("Unknown exception") } -class ErrorLogger { +class ErrorLogger { private val errors = mutableListOf>() fun log(response: NetworkResponse<*, E>) { @@ -29,6 +29,8 @@ class ErrorLogger { println("Error at $date: ${error.message}") } } + + fun dump(): List> = errors } fun processThrowables(logger: ErrorLogger) { @@ -41,7 +43,7 @@ fun processThrowables(logger: ErrorLogger) { logger.dumpLog() } -fun processApiErrors(apiExceptionLogger: ErrorLogger) { +fun processApiErrors(apiExceptionLogger: ErrorLogger) { apiExceptionLogger.log(Success("Success")) Thread.sleep(100) apiExceptionLogger.log(Success(Circle))