[−][src]Struct conduit_hyper::Service
A builder for a hyper::Service
.
Methods
impl Service
[src]
pub fn from_conduit<H: Handler>(
handler: Arc<H>,
remote_addr: SocketAddr
) -> Result<impl Service<Request<Body>, Response = Response<Body>, Error = Error, Future = impl Future<Output = Result<Response<Body>, Error>> + Send + 'static>, Error>
[src]
handler: Arc<H>,
remote_addr: SocketAddr
) -> Result<impl Service<Request<Body>, Response = Response<Body>, Error = Error, Future = impl Future<Output = Result<Response<Body>, Error>> + Send + 'static>, Error>
Turn a conduit handler into a Service
which can be bound to a hyper::Server
.
The returned service can be built into a hyper::Server
using make_service_fn
and
capturing the socket remote_addr
.
let handler = Arc::new(app); let make_service = hyper::service::make_service_fn(move |socket: &hyper::server::conn::AddrStream| { let addr = socket.remote_addr(); let handler = handler.clone(); async move { Service::from_conduit(handler, addr) } }); let addr = ([127, 0, 0, 1], port).into(); let server = hyper::Server::bind(&addr).serve(make_service);
Trait Implementations
Auto Trait Implementations
impl Send for Service
impl Sync for Service
impl Unpin for Service
impl UnwindSafe for Service
impl RefUnwindSafe for Service
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,