aboutsummaryrefslogtreecommitdiffstats
path: root/examples/abook.rs
diff options
context:
space:
mode:
authorHarald Eilertsen <haraldei@anduin.net>2018-10-28 22:12:17 +0100
committerHarald Eilertsen <haraldei@anduin.net>2018-10-28 22:24:42 +0100
commit75dcb1e9dc2c554e7193daeb1a84157fbcd8603d (patch)
tree867972dda090d5ab287755f00498119bb2934332 /examples/abook.rs
parent8760299b1c5ca352db2146c5ed63a3ed8bd2c599 (diff)
downloadrust-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.rs52
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);
- }
- };
-}