summaryrefslogtreecommitdiffstats
path: root/ipfs-api/examples/add_tar.rs
diff options
context:
space:
mode:
authorFerris Tseng <ferristseng@fastmail.fm>2018-06-27 17:28:14 -0400
committerFerris Tseng <ferristseng@fastmail.fm>2018-06-27 17:28:14 -0400
commitc162449ecbdbdda06c50fdb9818eeb0a041aeae2 (patch)
treeca822724b01aaf28dc8740fe6417849c3a663b57 /ipfs-api/examples/add_tar.rs
parent612d77fa907d7af9938c85a9eac7b49d44e56ef1 (diff)
updating examples
Diffstat (limited to 'ipfs-api/examples/add_tar.rs')
-rw-r--r--ipfs-api/examples/add_tar.rs34
1 files changed, 18 insertions, 16 deletions
diff --git a/ipfs-api/examples/add_tar.rs b/ipfs-api/examples/add_tar.rs
index 401c61d..1880712 100644
--- a/ipfs-api/examples/add_tar.rs
+++ b/ipfs-api/examples/add_tar.rs
@@ -7,15 +7,14 @@
//
extern crate futures;
+extern crate hyper;
extern crate ipfs_api;
extern crate tar;
-extern crate tokio_core;
-use futures::stream::Stream;
+use futures::{Future, Stream};
use ipfs_api::IpfsClient;
use std::io::Cursor;
use tar::Builder;
-use tokio_core::reactor::Core;
// Creates an Ipfs client, and adds this source file to Ipfs.
//
@@ -23,8 +22,7 @@ fn main() {
println!("note: this must be run in the root of the project repository");
println!("connecting to localhost:5001...");
- let mut core = Core::new().expect("expected event loop");
- let client = IpfsClient::default(&core.handle());
+ let client = IpfsClient::default();
let mut buf = Vec::new();
@@ -40,15 +38,19 @@ fn main() {
}
let cursor = Cursor::new(buf);
- let req = client.tar_add(cursor);
- let add = core.run(req).expect("expected a valid response");
-
- println!("added tar file: {:?}", add);
- println!();
-
- let req = client.tar_cat(&add.hash[..]).concat2();
- let cat = core.run(req).expect("expected a valid response");
-
- println!("{}", String::from_utf8_lossy(&cat[..]));
- println!();
+ let req = client
+ .tar_add(cursor)
+ .and_then(move |add| {
+ println!("added tar file: {:?}", add);
+ println!();
+
+ client.tar_cat(&add.hash[..]).concat2()
+ })
+ .map(|cat| {
+ println!("{}", String::from_utf8_lossy(&cat[..]));
+ println!();
+ })
+ .map_err(|e| eprintln!("{}", e));
+
+ hyper::rt::run(req)
}