Skip to content

Commit 3faca24

Browse files
committed
Extract timeout method to RequestEntity
1 parent c0e6f58 commit 3faca24

File tree

3 files changed

+10
-6
lines changed

3 files changed

+10
-6
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,8 @@ Run the following command to run Connect-RPC conformance tests:
8282
docker build . --output "out" --progress=plain
8383
```
8484

85-
Execution results are output in STDOUT.
86-
Diagnostic data from the server itself is output in the `out/out.log` file.
85+
Execution results are output to STDOUT.
86+
Diagnostic data from the server itself is written to the log file `out/out.log`.
8787

8888
### Conformance tests status
8989

core/src/main/scala/org/ivovk/connect_rpc_scala/ConnectRpcHttpRoutes.scala

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import io.grpc.stub.MetadataUtils
1212
import org.http4s.*
1313
import org.http4s.dsl.Http4sDsl
1414
import org.ivovk.connect_rpc_scala.http.*
15-
import org.ivovk.connect_rpc_scala.http.Headers.*
15+
import org.ivovk.connect_rpc_scala.http.Headers.`X-Test-Case-Name`
1616
import org.ivovk.connect_rpc_scala.http.MessageCodec.given
1717
import org.ivovk.connect_rpc_scala.http.QueryParams.*
1818
import org.slf4j.{Logger, LoggerFactory}
@@ -151,8 +151,8 @@ object ConnectRpcHttpRoutes {
151151
method.descriptor,
152152
CallOptions.DEFAULT
153153
.pipe(
154-
req.headers.get[`Connect-Timeout-Ms`].fold[Endo[CallOptions]](identity) { header =>
155-
_.withDeadlineAfter(header.value, MILLISECONDS)
154+
req.timeout.fold[Endo[CallOptions]](identity) { timeout =>
155+
_.withDeadlineAfter(timeout, MILLISECONDS)
156156
}
157157
),
158158
message

core/src/main/scala/org/ivovk/connect_rpc_scala/http/RequestEntity.scala

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@ package org.ivovk.connect_rpc_scala.http
22

33
import cats.MonadThrow
44
import fs2.Stream
5-
import org.http4s.{Charset, Headers, Media}
65
import org.http4s.headers.`Content-Type`
6+
import org.http4s.{Charset, Headers, Media}
7+
import org.ivovk.connect_rpc_scala.http.Headers.`Connect-Timeout-Ms`
78
import scalapb.{GeneratedMessage as Message, GeneratedMessageCompanion as Companion}
89

910
object RequestEntity {
@@ -26,6 +27,9 @@ case class RequestEntity[F[_]](
2627
def charset: Charset =
2728
contentType.flatMap(_.charset).getOrElse(Charset.`UTF-8`)
2829

30+
def timeout: Option[Long] =
31+
headers.get[`Connect-Timeout-Ms`].map(_.value)
32+
2933
def as[A <: Message](using M: MonadThrow[F], codec: MessageCodec[F], cmp: Companion[A]): F[A] =
3034
M.rethrow(codec.decode(this).value)
3135

0 commit comments

Comments
 (0)