@@ -7,22 +7,22 @@ import zio.http.netty.NettyConfig
7
7
import zio .http .netty .NettyConfig .LeakDetectionLevel
8
8
import zio .stacktracer .TracingImplicits .disableAutoTrace
9
9
10
- final class QuickAdapter [R ] private (requestHandler : QuickRequestHandler [R ]) {
10
+ final class QuickAdapter [R ] private (requestHandler : QuickRequestHandler [R ], forwardUploadRequest : Boolean ) {
11
11
12
12
private implicit val trace : Trace = Trace .empty
13
13
14
14
/**
15
15
* Converts this adapter to a [[QuickHandlers ]] which contains [[zio.http.RequestHandler ]]s for manually constructing zio-http routes
16
16
*/
17
17
val handlers : QuickHandlers [R ] = QuickHandlers (
18
- api = Handler .fromFunctionZIO[Request ](requestHandler.handleHttpRequest),
18
+ api = Handler .fromFunctionZIO[Request ](requestHandler.handleHttpRequest(forwardUploadRequest) ),
19
19
upload = Handler .fromFunctionZIO[Request ](requestHandler.handleUploadRequest),
20
20
webSocket = Handler .fromFunctionZIO[Request ](requestHandler.handleWebSocketRequest)
21
21
)
22
22
23
23
@ deprecated(" Use `handlers` instead" , " 2.5.0" )
24
24
lazy val handler : RequestHandler [R , Nothing ] =
25
- Handler .fromFunctionZIO[Request ](requestHandler.handleHttpRequest)
25
+ Handler .fromFunctionZIO[Request ](requestHandler.handleHttpRequest(forwardUploadRequest) )
26
26
27
27
/**
28
28
* Converts this adapter to a `Routes` serving the GraphQL API at the specified path.
@@ -93,8 +93,8 @@ final class QuickAdapter[R] private (requestHandler: QuickRequestHandler[R]) {
93
93
object QuickAdapter {
94
94
type Configurator [- R ] = URIO [R & Scope , Unit ]
95
95
96
- def apply [R ](interpreter : GraphQLInterpreter [R , Any ]): QuickAdapter [R ] =
97
- new QuickAdapter (new QuickRequestHandler (interpreter, quick.WebSocketConfig .default))
96
+ def apply [R ](interpreter : GraphQLInterpreter [R , Any ], forwardUploadRequest : Boolean = false ): QuickAdapter [R ] =
97
+ new QuickAdapter (new QuickRequestHandler (interpreter, quick.WebSocketConfig .default), forwardUploadRequest )
98
98
99
99
def handlers [R ](implicit tag : Tag [R ], trace : Trace ): URIO [QuickAdapter [R ], QuickHandlers [R ]] =
100
100
ZIO .serviceWith(_.handlers)
0 commit comments