From f723d100871e025e4bdd2f47397c9b089e666ce0 Mon Sep 17 00:00:00 2001 From: Bryan Burgers Date: Mon, 4 Jun 2018 22:36:06 -0500 Subject: Create tokio-codec (#360) Create a new tokio-codec crate with many of the contents of `tokio_io::codec`. --- examples/connect.rs | 6 ++++-- examples/print_each_packet.rs | 7 ++++--- examples/tinyhttp.rs | 7 ++++--- examples/udp-codec.rs | 3 ++- 4 files changed, 14 insertions(+), 9 deletions(-) (limited to 'examples') diff --git a/examples/connect.rs b/examples/connect.rs index f44a5c1e..5a6b5151 100644 --- a/examples/connect.rs +++ b/examples/connect.rs @@ -17,6 +17,7 @@ #![deny(warnings)] extern crate tokio; +extern crate tokio_codec; extern crate tokio_io; extern crate futures; extern crate bytes; @@ -82,7 +83,7 @@ fn main() { mod codec { use std::io; use bytes::{BufMut, BytesMut}; - use tokio_io::codec::{Encoder, Decoder}; + use tokio_codec::{Encoder, Decoder}; /// A simple `Codec` implementation that just ships bytes around. /// @@ -120,6 +121,7 @@ mod codec { mod tcp { use tokio; + use tokio_codec::Decoder; use tokio::net::TcpStream; use tokio::prelude::*; @@ -151,7 +153,7 @@ mod tcp { // to the TCP stream. This is done to ensure that happens concurrently // with us reading data from the stream. Box::new(tcp.map(move |stream| { - let (sink, stream) = stream.framed(Bytes).split(); + let (sink, stream) = Bytes.framed(stream).split(); tokio::spawn(stdin.forward(sink).then(|result| { if let Err(e) = result { diff --git a/examples/print_each_packet.rs b/examples/print_each_packet.rs index bb054948..5dc53324 100644 --- a/examples/print_each_packet.rs +++ b/examples/print_each_packet.rs @@ -55,9 +55,10 @@ #![deny(warnings)] extern crate tokio; +extern crate tokio_codec; extern crate tokio_io; -use tokio_io::codec::BytesCodec; +use tokio_codec::{Decoder, BytesCodec}; use tokio::net::TcpListener; use tokio::prelude::*; @@ -99,8 +100,8 @@ fn main() { // We're parsing each socket with the `BytesCodec` included in `tokio_io`, // and then we `split` each codec into the reader/writer halves. // - // See https://docs.rs/tokio-io/0.1/src/tokio_io/codec/bytes_codec.rs.html - let framed = socket.framed(BytesCodec::new()); + // See https://docs.rs/tokio-codec/0.1/src/tokio_codec/bytes_codec.rs.html + let framed = BytesCodec::new().framed(socket); let (_writer, reader) = framed.split(); let processor = reader diff --git a/examples/tinyhttp.rs b/examples/tinyhttp.rs index 9bf3f27a..d56ff96f 100644 --- a/examples/tinyhttp.rs +++ b/examples/tinyhttp.rs @@ -21,6 +21,7 @@ extern crate serde_derive; extern crate serde_json; extern crate time; extern crate tokio; +extern crate tokio_codec; extern crate tokio_io; use std::{env, fmt, io}; @@ -29,7 +30,7 @@ use std::net::SocketAddr; use tokio::net::{TcpStream, TcpListener}; use tokio::prelude::*; -use tokio_io::codec::{Encoder, Decoder}; +use tokio_codec::{Encoder, Decoder}; use bytes::BytesMut; use http::header::HeaderValue; @@ -55,10 +56,10 @@ fn main() { } fn process(socket: TcpStream) { - let (tx, rx) = socket + let (tx, rx) = // Frame the socket using the `Http` protocol. This maps the TCP socket // to a Stream + Sink of HTTP frames. - .framed(Http) + Http.framed(socket) // This splits a single `Stream + Sink` value into two separate handles // that can be used independently (even on different tasks or threads). .split(); diff --git a/examples/udp-codec.rs b/examples/udp-codec.rs index 063083e5..b273a360 100644 --- a/examples/udp-codec.rs +++ b/examples/udp-codec.rs @@ -9,6 +9,7 @@ #![deny(warnings)] extern crate tokio; +extern crate tokio_codec; extern crate tokio_io; extern crate env_logger; @@ -16,7 +17,7 @@ use std::net::SocketAddr; use tokio::prelude::*; use tokio::net::{UdpSocket, UdpFramed}; -use tokio_io::codec::BytesCodec; +use tokio_codec::BytesCodec; fn main() { let _ = env_logger::init(); -- cgit v1.2.3