diff options
Diffstat (limited to 'ipfs-api/src/lib.rs')
-rw-r--r-- | ipfs-api/src/lib.rs | 49 |
1 files changed, 30 insertions, 19 deletions
diff --git a/ipfs-api/src/lib.rs b/ipfs-api/src/lib.rs index 2aeebae..05fe0fa 100644 --- a/ipfs-api/src/lib.rs +++ b/ipfs-api/src/lib.rs @@ -6,13 +6,15 @@ // copied, modified, or distributed except according to those terms. // +#![recursion_limit = "128"] + //! Rust library for connecting to the IPFS HTTP API using tokio. //! //! ## Usage //! //! ```toml //! [dependencies] -//! ipfs-api = "0.4.0-alpha.3" +//! ipfs-api = "0.5.0-alpha1" //! ``` //! //! ## Examples @@ -20,22 +22,25 @@ //! Write a file to IPFS: //! //! ```no_run +//! # extern crate hyper; //! # extern crate ipfs_api; -//! # extern crate tokio_core; //! # +//! use hyper::rt::Future; //! use ipfs_api::IpfsClient; //! use std::io::Cursor; -//! use tokio_core::reactor::Core; //! //! # fn main() { -//! let mut core = Core::new().unwrap(); -//! let client = IpfsClient::default(&core.handle()); +//! let client = IpfsClient::default(); //! let data = Cursor::new("Hello World!"); //! -//! let req = client.add(data); -//! let res = core.run(req).unwrap(); +//! let req = client +//! .add(data) +//! .map(|res| { +//! println!("{}", res.hash); +//! }) +//! .map_err(|e| eprintln!("{}", e)); //! -//! println!("{}", res.hash); +//! hyper::rt::run(req); //! # } //! ``` //! @@ -43,24 +48,28 @@ //! //! ```no_run //! # extern crate futures; +//! # extern crate hyper; //! # extern crate ipfs_api; -//! # extern crate tokio_core; //! # -//! use futures::stream::Stream; +//! use futures::{Future, Stream}; //! use ipfs_api::IpfsClient; //! use std::io::{self, Write}; -//! use tokio_core::reactor::Core; //! //! # fn main() { -//! let mut core = Core::new().unwrap(); -//! let client = IpfsClient::default(&core.handle()); +//! let client = IpfsClient::default(); +//! +//! let req = client +//! .get("/test/file.json") +//! .concat2() +//! .map(|res| { +//! let out = io::stdout(); +//! let mut out = out.lock(); //! -//! let req = client.get("/test/file.json").concat2(); -//! let res = core.run(req).unwrap(); -//! let out = io::stdout(); -//! let mut out = out.lock(); +//! out.write_all(&res).unwrap(); +//! }) +//! .map_err(|e| eprintln!("{}", e)); //! -//! out.write_all(&res).unwrap(); +//! hyper::rt::run(req); //! # } //! ``` //! @@ -77,6 +86,7 @@ extern crate bytes; #[macro_use] extern crate error_chain; extern crate futures; +extern crate http; extern crate hyper; extern crate hyper_multipart_rfc7578 as hyper_multipart; extern crate serde; @@ -84,7 +94,8 @@ extern crate serde; extern crate serde_derive; extern crate serde_json; extern crate serde_urlencoded; -extern crate tokio_core; +extern crate tokio; +extern crate tokio_codec; extern crate tokio_io; pub use client::IpfsClient; |