1 mod buffer; 2 mod counts; 3 mod flow_control; 4 mod prioritize; 5 mod recv; 6 mod send; 7 mod state; 8 mod store; 9 mod stream; 10 mod streams; 11 12 pub(crate) use self::prioritize::Prioritized; 13 pub(crate) use self::recv::Open; 14 pub(crate) use self::send::PollReset; 15 pub(crate) use self::streams::{StreamRef, OpaqueStreamRef, Streams}; 16 17 use self::buffer::Buffer; 18 use self::counts::Counts; 19 use self::flow_control::FlowControl; 20 use self::prioritize::Prioritize; 21 use self::recv::Recv; 22 use self::send::Send; 23 use self::state::State; 24 use self::store::Store; 25 use self::stream::Stream; 26 27 use frame::{StreamId, StreamIdOverflow}; 28 use proto::*; 29 30 use bytes::Bytes; 31 use std::time::Duration; 32 33 #[derive(Debug)] 34 pub struct Config { 35 /// Initial window size of locally initiated streams 36 pub local_init_window_sz: WindowSize, 37 38 /// Initial maximum number of locally initiated streams. 39 /// After receiving a Settings frame from the remote peer, 40 /// the connection will overwrite this value with the 41 /// MAX_CONCURRENT_STREAMS specified in the frame. 42 pub initial_max_send_streams: usize, 43 44 /// The stream ID to start the next local stream with 45 pub local_next_stream_id: StreamId, 46 47 /// If the local peer is willing to receive push promises 48 pub local_push_enabled: bool, 49 50 /// How long a locally reset stream should ignore frames 51 pub local_reset_duration: Duration, 52 53 /// Maximum number of locally reset streams to keep at a time 54 pub local_reset_max: usize, 55 56 /// Initial window size of remote initiated streams 57 pub remote_init_window_sz: WindowSize, 58 59 /// Maximum number of remote initiated streams 60 pub remote_max_initiated: Option<usize>, 61 } 62