diff options
author | Harald Eilertsen <haraldei@anduin.net> | 2018-10-28 22:12:17 +0100 |
---|---|---|
committer | Harald Eilertsen <haraldei@anduin.net> | 2018-10-28 22:24:42 +0100 |
commit | 75dcb1e9dc2c554e7193daeb1a84157fbcd8603d (patch) | |
tree | 867972dda090d5ab287755f00498119bb2934332 /examples/abook.rs | |
parent | 8760299b1c5ca352db2146c5ed63a3ed8bd2c599 (diff) | |
download | rust-zotapi-75dcb1e9dc2c554e7193daeb1a84157fbcd8603d.tar.gz rust-zotapi-75dcb1e9dc2c554e7193daeb1a84157fbcd8603d.tar.bz2 rust-zotapi-75dcb1e9dc2c554e7193daeb1a84157fbcd8603d.zip |
Move zot cli example modules into submodule.
Also rename example from zot to zotcli to avoid name clash.
Diffstat (limited to 'examples/abook.rs')
-rw-r--r-- | examples/abook.rs | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/examples/abook.rs b/examples/abook.rs deleted file mode 100644 index bceaacc..0000000 --- a/examples/abook.rs +++ /dev/null @@ -1,52 +0,0 @@ -/* Example Zot API command line utility, part of zotapi. - * Copyright (C) 2018 Harald Eilertsen <haraldei@anduin.net> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -extern crate zotapi; -extern crate serde_json; - -pub fn fetch(client: &zotapi::Client, raw: bool) { - match client.abook().fetch() { - Ok(payload) => { - if raw { - println!("{}", &payload); - } - else { - process(&payload); - } - }, - Err(e) => { - println!("{:?}", e); - } - } -} - -fn process(payload: &str) { - let data: serde_json::Value = serde_json::from_str(&payload).unwrap(); - match data { - serde_json::Value::Array(v) => { - for contact in v { - println!("{} ({}, {})", - contact["xchan_name"], - contact["xchan_addr"], - contact["xchan_network"]); - } - }, - _ => { - println!("Unexpected data:\n{}", payload); - } - }; -} |