Skip to content

Commit 7ec636d

Browse files
authored
Remove header filters from ConnectHttp4sChannelBuilder (#158)
1 parent 27f2b5f commit 7ec636d

File tree

2 files changed

+3
-34
lines changed

2 files changed

+3
-34
lines changed

conformance/src/main/scala/org/ivovk/connect_rpc_scala/conformance/Http4sClientLauncher.scala

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import org.ivovk.connect_rpc_scala.grpc.ClientCalls
1616
import org.ivovk.connect_rpc_scala.http4s.ConnectHttp4sChannelBuilder
1717
import org.ivovk.connect_rpc_scala.util.PipeSyntax.*
1818
import org.slf4j.LoggerFactory
19-
import scalapb.{GeneratedMessage, GeneratedMessageCompanion}
19+
import scalapb.{GeneratedMessage as Message, GeneratedMessageCompanion as Companion}
2020

2121
import java.util.concurrent.TimeUnit
2222
import scala.concurrent.duration.*
@@ -94,12 +94,10 @@ object Http4sClientLauncher extends IOApp.Simple {
9494
s"Invalid service name: ${spec.service}.",
9595
)
9696

97-
def doRun[Req <: GeneratedMessage, Resp](
97+
def doRun[Req <: Message: Companion, Resp](
9898
methodDescriptor: MethodDescriptor[Req, Resp]
9999
)(
100100
extractPayloads: Resp => Seq[conformance.ConformancePayload]
101-
)(
102-
using comp: GeneratedMessageCompanion[Req]
103101
): IO[ClientCompatResponse] = {
104102
val request = spec.requestMessages.head.unpack[Req]
105103
val metadata = ConformanceHeadersConv.toMetadata(spec.requestHeaders)

http4s/src/main/scala/org/ivovk/connect_rpc_scala/http4s/ConnectHttp4sChannelBuilder.scala

Lines changed: 1 addition & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import io.grpc.Channel
77
import org.http4s.Uri
88
import org.http4s.client.Client
99
import org.ivovk.connect_rpc_scala.http.codec.{JsonSerDeser, JsonSerDeserBuilder, ProtoMessageCodec}
10-
import org.ivovk.connect_rpc_scala.http.{HeaderMapping, HeadersFilter}
1110
import org.ivovk.connect_rpc_scala.http4s.client.ConnectHttp4sChannel
1211

1312
object ConnectHttp4sChannelBuilder {
@@ -16,53 +15,29 @@ object ConnectHttp4sChannelBuilder {
1615
new ConnectHttp4sChannelBuilder(
1716
client = client,
1817
customJsonSerDeser = None,
19-
incomingHeadersFilter = HeaderMapping.DefaultIncomingHeadersFilter,
20-
outgoingHeadersFilter = HeaderMapping.DefaultOutgoingHeadersFilter,
2118
useBinaryFormat = false,
2219
)
2320
}
2421

2522
class ConnectHttp4sChannelBuilder[F[_]: Async] private (
2623
client: Client[F],
2724
customJsonSerDeser: Option[JsonSerDeser[F]],
28-
incomingHeadersFilter: HeadersFilter,
29-
outgoingHeadersFilter: HeadersFilter,
3025
useBinaryFormat: Boolean,
3126
) {
3227

3328
private def copy(
3429
customJsonSerDeser: Option[JsonSerDeser[F]] = customJsonSerDeser,
35-
incomingHeadersFilter: HeadersFilter = incomingHeadersFilter,
36-
outgoingHeadersFilter: HeadersFilter = outgoingHeadersFilter,
3730
useBinaryFormat: Boolean = useBinaryFormat,
3831
): ConnectHttp4sChannelBuilder[F] =
3932
new ConnectHttp4sChannelBuilder(
4033
client,
4134
customJsonSerDeser,
42-
incomingHeadersFilter,
43-
outgoingHeadersFilter,
4435
useBinaryFormat,
4536
)
4637

4738
def withJsonCodecConfigurator(method: Endo[JsonSerDeserBuilder[F]]): ConnectHttp4sChannelBuilder[F] =
4839
copy(customJsonSerDeser = Some(method(JsonSerDeserBuilder[F]()).build))
4940

50-
/**
51-
* Filter for incoming headers.
52-
*
53-
* By default, headers with "connection" prefix are filtered out (GRPC requirement).
54-
*/
55-
def withIncomingHeadersFilter(filter: String => Boolean): ConnectHttp4sChannelBuilder[F] =
56-
copy(incomingHeadersFilter = filter)
57-
58-
/**
59-
* Filter for outgoing headers.
60-
*
61-
* By default, headers with "grpc-" prefix are filtered out.
62-
*/
63-
def withOutgoingHeadersFilter(filter: String => Boolean): ConnectHttp4sChannelBuilder[F] =
64-
copy(outgoingHeadersFilter = filter)
65-
6641
/**
6742
* Use protobuf binary format for messages.
6843
*
@@ -79,11 +54,7 @@ class ConnectHttp4sChannelBuilder[F[_]: Async] private (
7954
if useBinaryFormat then ProtoMessageCodec[F]()
8055
else customJsonSerDeser.getOrElse(JsonSerDeserBuilder[F]().build).codec
8156

82-
val headerMapping = Http4sHeaderMapping(
83-
incomingHeadersFilter,
84-
outgoingHeadersFilter,
85-
treatTrailersAsHeaders = true,
86-
)
57+
val headerMapping = Http4sHeaderMapping(_ => true, _ => true, treatTrailersAsHeaders = true)
8758

8859
new ConnectHttp4sChannel(
8960
httpClient = client,

0 commit comments

Comments
 (0)