Skip to content

Refactor data models and improve code quality across microservices #103

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
package pl.piomin.samples.eventdriven.cunsumerb.message

data class CallmeEvent(val id: Int = 0, val message: String = "")
data class CallmeEvent(val id: Int, val message: String)
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
package pl.piomin.samples.eventdriven.cunsumerb.message

data class CallmeResponse(val id: Int = 0, val message: String = "")
data class CallmeResponse(val id: Int, val message: String)
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,23 @@ package pl.piomin.samples.caller.client

import org.slf4j.Logger
import org.slf4j.LoggerFactory
import org.slf4j.MDC
import org.springframework.http.HttpRequest
import org.springframework.http.client.ClientHttpRequestExecution
import org.springframework.http.client.ClientHttpRequestInterceptor
import org.springframework.http.client.ClientHttpResponse

class ResponseTimeInterceptor(private val responseTimeHistory: ResponseTimeHistory) : ClientHttpRequestInterceptor {
class ResponseTimeInterceptor(private val history: ResponseTimeHistory) : ClientHttpRequestInterceptor {

private val logger: Logger = LoggerFactory.getLogger(ResponseTimeInterceptor::class.java)

override fun intercept(request: HttpRequest, array: ByteArray,
execution: ClientHttpRequestExecution): ClientHttpResponse {
val startTime: Long = System.currentTimeMillis()
val response: ClientHttpResponse = execution.execute(request, array) // 1
val endTime: Long = System.currentTimeMillis()
val responseTime: Long = endTime - startTime
logger.info("Response time: instance->{}, time->{}", MDC.get("address"), responseTime)
responseTimeHistory.addNewMeasure(MDC.get("address"), responseTime) // 2
override fun intercept(request: HttpRequest, body: ByteArray, execution: ClientHttpRequestExecution): ClientHttpResponse {
val start = System.currentTimeMillis()
val response = execution.execute(request, body)
val end = System.currentTimeMillis()
val executionTime = end - start
val address = request.uri.host + ":" + request.uri.port
history.addNewMeasure(address, executionTime)
logger.info("Request to {} took {} ms", address, executionTime)
return response
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -48,5 +48,5 @@ class CallerController(private val template: RestTemplate, private val factory:
@GetMapping("/conversations/{requestId}")
fun findByRequestId(@PathVariable requestId: Int): Conversation? =
template.getForObject("http://inter-callme-service/callme/conversations/{requestId}",
Conversation::class.java, requestId)
Conversation::class.java, requestId)
}
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
package pl.piomin.samples.caller.model

data class CallmeRequest (val id: Int? = null, val message: String? = null)
data class CallmeRequest(val id: Int, val message: String)
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
package pl.piomin.samples.caller.model

data class CallmeResponse(var id: Int = 0, val message: String = "")
data class CallmeResponse(val id: Int, val message: String)
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@ package pl.piomin.samples.caller.model

import java.time.LocalDateTime

class Conversation(val time: LocalDateTime = LocalDateTime.now(),
data class Conversation(val time: LocalDateTime = LocalDateTime.now(),
val request: CallmeRequest? = null,
val response: CallmeResponse? = null)
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
package pl.piomin.samples.callme.model

data class CallmeRequest (val id: Int = 0, val message: String = "")
data class CallmeRequest(val id: Int, val message: String)
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ package pl.piomin.samples.intro.domain
data class Person(val id: Int,
val firstName: String,
val lastName: String,
var age: Int)
val age: Int)