Merge pull request #65 from hyperium/debug

Debug
This commit is contained in:
Sean McArthur
2014-09-27 14:16:29 -07:00
4 changed files with 8 additions and 5 deletions

View File

@@ -32,7 +32,7 @@ impl Clone for MockStream {
impl MockStream {
fn new() -> MockStream {
let head = b"HTTP/1.1 200 OK\r\nServer: Mock\r\n\r\n";
let mut res = Vec::from_slice(head);
let mut res = head.to_vec();
res.push_all(README);
MockStream {
read: MemReader::new(res),

View File

@@ -59,15 +59,15 @@ impl Clone for Box<NetworkStream + Send> {
impl Reader for Box<NetworkStream + Send> {
#[inline]
fn read(&mut self, buf: &mut [u8]) -> IoResult<uint> { self.read(buf) }
fn read(&mut self, buf: &mut [u8]) -> IoResult<uint> { (**self).read(buf) }
}
impl Writer for Box<NetworkStream + Send> {
#[inline]
fn write(&mut self, msg: &[u8]) -> IoResult<()> { self.write(msg) }
fn write(&mut self, msg: &[u8]) -> IoResult<()> { (**self).write(msg) }
#[inline]
fn flush(&mut self) -> IoResult<()> { self.flush() }
fn flush(&mut self) -> IoResult<()> { (**self).flush() }
}
/// A `NetworkListener` for `HttpStream`s.

View File

@@ -1,6 +1,7 @@
//! HTTP Server
use std::io::{Listener, IoResult, EndOfFile};
use std::io::net::ip::{IpAddr, Port, SocketAddr};
use std::task::TaskBuilder;
use intertwine::{Intertwine, Intertwined};
use macceptor::MoveAcceptor;
@@ -58,6 +59,7 @@ impl<L: NetworkListener<S, A>, S: NetworkStream, A: NetworkAcceptor<S>> Server<L
let mut acceptors = Vec::new();
let mut sockets = Vec::new();
for (ip, port) in self.pairs.into_iter() {
debug!("binding to {}:{}", ip, port);
let mut listener: L = try_io!(NetworkListener::<S, A>::bind(ip.to_string().as_slice(), port));
sockets.push(try_io!(listener.socket_name()));
@@ -71,7 +73,7 @@ impl<L: NetworkListener<S, A>, S: NetworkStream, A: NetworkAcceptor<S>> Server<L
.map(|acceptor| acceptor.move_incoming())
.intertwine();
spawn(proc() {
TaskBuilder::new().named("hyper acceptor").spawn(proc() {
handler.handle(Incoming { from: connections });
});

View File

@@ -37,6 +37,7 @@ impl Request {
/// immediately useful.
pub fn new<S: NetworkStream>(mut stream: S) -> HttpResult<Request> {
let remote_addr = try_io!(stream.peer_name());
debug!("remote addr = {}", remote_addr);
let mut stream = BufferedReader::new(stream.abstract());
let (method, uri, version) = try!(read_request_line(&mut stream));
let headers = try!(Headers::from_raw(&mut stream));