mirror of
https://github.com/fafhrd91/actix-web
synced 2024-11-24 08:22:59 +01:00
ws client timeouts
This commit is contained in:
parent
caaace82e3
commit
8d1de6c497
@ -2,17 +2,18 @@
|
|||||||
use std::{fmt, io, str};
|
use std::{fmt, io, str};
|
||||||
use std::rc::Rc;
|
use std::rc::Rc;
|
||||||
use std::cell::UnsafeCell;
|
use std::cell::UnsafeCell;
|
||||||
|
use std::time::Duration;
|
||||||
|
|
||||||
use base64;
|
use base64;
|
||||||
use rand;
|
use rand;
|
||||||
use bytes::Bytes;
|
use bytes::Bytes;
|
||||||
use cookie::Cookie;
|
use cookie::Cookie;
|
||||||
|
use byteorder::{ByteOrder, NetworkEndian};
|
||||||
use http::{HttpTryFrom, StatusCode, Error as HttpError};
|
use http::{HttpTryFrom, StatusCode, Error as HttpError};
|
||||||
use http::header::{self, HeaderName, HeaderValue};
|
use http::header::{self, HeaderName, HeaderValue};
|
||||||
use sha1::Sha1;
|
use sha1::Sha1;
|
||||||
use futures::{Async, Future, Poll, Stream};
|
use futures::{Async, Future, Poll, Stream};
|
||||||
use futures::unsync::mpsc::{unbounded, UnboundedSender};
|
use futures::unsync::mpsc::{unbounded, UnboundedSender};
|
||||||
use byteorder::{ByteOrder, NetworkEndian};
|
|
||||||
|
|
||||||
use actix::prelude::*;
|
use actix::prelude::*;
|
||||||
|
|
||||||
@ -299,9 +300,32 @@ impl ClientHandshake {
|
|||||||
request: None,
|
request: None,
|
||||||
tx: None,
|
tx: None,
|
||||||
error: Some(err),
|
error: Some(err),
|
||||||
max_size: 0
|
max_size: 0,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Set handshake timeout
|
||||||
|
///
|
||||||
|
/// Handshake timeout is a total time before handshake should be completed.
|
||||||
|
/// Default value is 5 seconds.
|
||||||
|
pub fn timeout(mut self, timeout: Duration) -> Self {
|
||||||
|
if let Some(request) = self.request.take() {
|
||||||
|
self.request = Some(request.timeout(timeout));
|
||||||
|
}
|
||||||
|
self
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Set connection timeout
|
||||||
|
///
|
||||||
|
/// Connection timeout includes resolving hostname and actual connection to
|
||||||
|
/// the host.
|
||||||
|
/// Default value is 1 second.
|
||||||
|
pub fn conn_timeout(mut self, timeout: Duration) -> Self {
|
||||||
|
if let Some(request) = self.request.take() {
|
||||||
|
self.request = Some(request.conn_timeout(timeout));
|
||||||
|
}
|
||||||
|
self
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Future for ClientHandshake {
|
impl Future for ClientHandshake {
|
||||||
|
Loading…
Reference in New Issue
Block a user