testing, debugging, making things private
This commit is contained in:
		| @@ -39,6 +39,8 @@ impl<T> FramedRead<T> { | ||||
|     } | ||||
|  | ||||
|     fn decode_frame(&mut self, mut bytes: Bytes) -> Result<Option<Frame>, ConnectionError> { | ||||
|         trace!("decoding frame from {}B", bytes.len()); | ||||
|  | ||||
|         // Parse the head | ||||
|         let head = frame::Head::parse(&bytes); | ||||
|  | ||||
| @@ -47,7 +49,7 @@ impl<T> FramedRead<T> { | ||||
|         } | ||||
|  | ||||
|         let kind = head.kind(); | ||||
|         debug!("received {:?}", kind); | ||||
|         debug!("decoded; kind={:?}", kind); | ||||
|  | ||||
|         let frame = match kind { | ||||
|             Kind::Settings => { | ||||
| @@ -121,11 +123,13 @@ impl<T> Stream for FramedRead<T> | ||||
|  | ||||
|     fn poll(&mut self) -> Poll<Option<Frame>, ConnectionError> { | ||||
|         loop { | ||||
|             trace!("poll"); | ||||
|             let bytes = match try_ready!(self.inner.poll()) { | ||||
|                 Some(bytes) => bytes.freeze(), | ||||
|                 None => return Ok(Async::Ready(None)), | ||||
|             }; | ||||
|  | ||||
|             trace!("poll; bytes={}B", bytes.len()); | ||||
|             if let Some(frame) = try!(self.decode_frame(bytes)) { | ||||
|                 debug!("poll; frame={:?}", frame); | ||||
|                 return Ok(Async::Ready(Some(frame))); | ||||
|   | ||||
| @@ -110,29 +110,19 @@ impl<T, U> Stream for StreamRecvOpen<T> | ||||
|  | ||||
|         trace!("poll"); | ||||
|         loop { | ||||
|             let frame = match self.inner.poll()? { | ||||
|                 Async::NotReady => { | ||||
|                     panic!("poll: NotReady"); | ||||
|                 } | ||||
|                 Async::Ready(None) => { | ||||
|                     panic!("poll: None"); | ||||
|                 } | ||||
|                 Async::Ready(Some(f)) => { | ||||
|                     trace!("poll: id={:?} eos={}", f.stream_id(), f.is_end_stream()); | ||||
|                     f | ||||
|                 } | ||||
|             let frame = match try_ready!(self.inner.poll()) { | ||||
|                 None => return Ok(Async::Ready(None)), | ||||
|                 Some(f) => f, | ||||
|             }; | ||||
|             // let frame = match try_ready!(self.inner.poll()) { | ||||
|             //     None => return Ok(Async::Ready(None)), | ||||
|             //     Some(f) => f, | ||||
|             // }; | ||||
|  | ||||
|             let id = frame.stream_id(); | ||||
|             trace!("poll: id={:?}", id); | ||||
|  | ||||
|             if id.is_zero() { | ||||
|                 if !frame.is_connection_frame() { | ||||
|                     return Err(ProtocolError.into()) | ||||
|                 } | ||||
|  | ||||
|                 // Nothing to do on connection frames. | ||||
|                 return Ok(Async::Ready(Some(frame))); | ||||
|             } | ||||
|   | ||||
| @@ -87,6 +87,7 @@ impl<T, U> Sink for StreamSendOpen<T> | ||||
|             if !frame.is_connection_frame() { | ||||
|                 return Err(InvalidStreamId.into()) | ||||
|             } | ||||
|  | ||||
|             // Nothing to do on connection frames. | ||||
|             return self.inner.start_send(frame); | ||||
|         } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user