summaryrefslogtreecommitdiffstats
path: root/ipfs-cli/src/command
diff options
context:
space:
mode:
Diffstat (limited to 'ipfs-cli/src/command')
-rw-r--r--ipfs-cli/src/command/mod.rs1
-rw-r--r--ipfs-cli/src/command/shutdown.rs23
2 files changed, 24 insertions, 0 deletions
diff --git a/ipfs-cli/src/command/mod.rs b/ipfs-cli/src/command/mod.rs
index 351bcf6..c19236b 100644
--- a/ipfs-cli/src/command/mod.rs
+++ b/ipfs-cli/src/command/mod.rs
@@ -36,4 +36,5 @@ pub mod dns;
pub mod file;
pub mod files;
pub mod filestore;
+pub mod shutdown;
pub mod version;
diff --git a/ipfs-cli/src/command/shutdown.rs b/ipfs-cli/src/command/shutdown.rs
new file mode 100644
index 0000000..6cb9c1d
--- /dev/null
+++ b/ipfs-cli/src/command/shutdown.rs
@@ -0,0 +1,23 @@
+// Copyright 2017 rust-ipfs-api Developers
+//
+// Licensed under the Apache License, Version 2.0, <LICENSE-APACHE or
+// http://apache.org/licenses/LICENSE-2.0> or the MIT license <LICENSE-MIT or
+// http://opensource.org/licenses/MIT>, at your option. This file may not be
+// copied, modified, or distributed except according to those terms.
+//
+
+use clap::App;
+use command::EXPECTED_API;
+use ipfs_api::IpfsClient;
+use tokio_core::reactor::Core;
+
+pub fn signature<'a, 'b>() -> App<'a, 'b> {
+ clap_app!(
+ @subcommand shutdown =>
+ (about: "Shutdown IPFS daemon")
+ )
+}
+
+pub fn handle(core: &mut Core, client: &IpfsClient) {
+ core.run(client.shutdown()).expect(EXPECTED_API);
+}