put each interface in its own file
This commit is contained in:
		| @@ -7,9 +7,23 @@ use futures::*; | ||||
| use tokio_io::{AsyncRead, AsyncWrite}; | ||||
| use tokio_io::codec::length_delimited; | ||||
|  | ||||
| // First, pull in the internal interfaces that support macros used throughout this module. | ||||
|  | ||||
| #[macro_use] | ||||
| mod ifaces; | ||||
| use self::ifaces::*; | ||||
| mod apply_settings; | ||||
| #[macro_use] | ||||
| mod control_flow; | ||||
| #[macro_use] | ||||
| mod control_ping; | ||||
| mod control_settings; | ||||
| #[macro_use] | ||||
| mod control_streams; | ||||
|  | ||||
| use self::apply_settings::ApplySettings; | ||||
| use self::control_flow::ControlFlow; | ||||
| use self::control_ping::ControlPing; | ||||
| use self::control_settings::ControlSettings; | ||||
| use self::control_streams::ControlStreams; | ||||
|  | ||||
| mod connection; | ||||
| mod flow_control; | ||||
| @@ -39,7 +53,7 @@ use self::stream_recv_close::StreamRecvClose; | ||||
| use self::stream_recv_open::StreamRecvOpen; | ||||
| use self::stream_send_close::StreamSendClose; | ||||
| use self::stream_send_open::StreamSendOpen; | ||||
| use self::stream_store::StreamStore; | ||||
| use self::stream_store::StreamStates; | ||||
|  | ||||
| /// Represents the internals of an HTTP/2 connection. | ||||
| /// | ||||
| @@ -59,7 +73,7 @@ use self::stream_store::StreamStore; | ||||
| /// | ||||
| /// ### The stream transport | ||||
| /// | ||||
| /// The states of all HTTP/2 connections are stored centrally in the `StreamStore` at the | ||||
| /// The states of all HTTP/2 connections are stored centrally in the `StreamStates` at the | ||||
| /// bottom of the stream transport. Several modules above this access this state via the | ||||
| /// `ControlStreams` API to drive changes to the stream state.  In each direction (send | ||||
| /// from local to remote, and recv from remote to local), there is an Stream\*Open module | ||||
| @@ -103,7 +117,7 @@ use self::stream_store::StreamStore; | ||||
| /// - Ensures that the local peer's max stream concurrency is not violated. | ||||
| ///   - Emits StreamRefused resets to the remote. | ||||
| /// | ||||
| /// #### `StreamStore` | ||||
| /// #### `StreamStates` | ||||
| /// | ||||
| /// - Holds the state of all local & remote active streams. | ||||
| /// - Holds the cause of all reset/closed streams. | ||||
| @@ -138,7 +152,7 @@ type Streams<T, P> = | ||||
|             FlowControl< | ||||
|                 StreamSendClose< | ||||
|                     StreamRecvOpen< | ||||
|                         StreamStore<T, P>>>>>>; | ||||
|                         StreamStates<T, P>>>>>>; | ||||
|  | ||||
| type Codec<T, B> = | ||||
|     FramedRead< | ||||
| @@ -238,7 +252,7 @@ pub fn from_server_handshaker<T, P, B>(settings: Settings<FramedWrite<T, B::Buf> | ||||
|                         StreamRecvOpen::new( | ||||
|                             initial_recv_window_size, | ||||
|                             local_max_concurrency, | ||||
|                             StreamStore::new( | ||||
|                             StreamStates::new( | ||||
|                                 PingPong::new( | ||||
|                                     FramedRead::new(framed)))))))) | ||||
|     }); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user