1- use axum:: { body:: BoxBody , response:: IntoResponse } ;
2- use http:: { Request , Response } ;
1+ use conductor_common:: http:: { HttpRequest , HttpResponse , IntoResponse } ;
32use serde:: de:: DeserializeOwned ;
43use serde_json:: from_slice;
54
65use crate :: {
76 endpoint:: endpoint_runtime:: EndpointRuntime , graphql_utils:: ParsedGraphQLRequest ,
87 http_utils:: ExtractGraphQLOperationError ,
98} ;
10- use hyper:: { body:: to_bytes, Body } ;
9+ use hyper:: body:: to_bytes;
1110
1211#[ derive( Debug ) ]
1312pub struct FlowContext < ' a > {
1413 pub endpoint : Option < & ' a EndpointRuntime > ,
1514 pub downstream_graphql_request : Option < ParsedGraphQLRequest > ,
16- pub downstream_http_request : & ' a mut Request < Body > ,
17- pub short_circuit_response : Option < Response < BoxBody > > ,
15+ pub downstream_http_request : & ' a mut HttpRequest ,
16+ pub short_circuit_response : Option < HttpResponse > ,
1817 pub downstream_request_body_bytes : Option < Result < tokio_util:: bytes:: Bytes , hyper:: Error > > ,
1918}
2019
2120impl < ' a > FlowContext < ' a > {
22- pub fn new ( endpoint : & ' a EndpointRuntime , request : & ' a mut Request < Body > ) -> Self {
21+ pub fn new ( endpoint : & ' a EndpointRuntime , request : & ' a mut HttpRequest ) -> Self {
2322 FlowContext {
2423 downstream_graphql_request : None ,
2524 downstream_http_request : request,
@@ -32,7 +31,7 @@ impl<'a> FlowContext<'a> {
3231 pub async fn consume_body ( & mut self ) -> & Result < tokio_util:: bytes:: Bytes , hyper:: Error > {
3332 if self . downstream_request_body_bytes . is_none ( ) {
3433 self . downstream_request_body_bytes =
35- Some ( to_bytes ( self . downstream_http_request . body_mut ( ) ) . await ) ;
34+ Some ( to_bytes ( self . downstream_http_request . body_mut ( ) ) ) ;
3635 }
3736
3837 return self . downstream_request_body_bytes . as_ref ( ) . unwrap ( ) ;
@@ -56,7 +55,7 @@ impl<'a> FlowContext<'a> {
5655 }
5756
5857 #[ cfg( test) ]
59- pub fn empty_from_request ( request : & ' a mut Request < Body > ) -> Self {
58+ pub fn empty_from_request ( request : & ' a mut HttpRequest ) -> Self {
6059 FlowContext {
6160 downstream_graphql_request : None ,
6261 downstream_http_request : request,
0 commit comments