accumulate-api 0.1.0

Lower-level API for interfacing with the Accumulate Protocol via JSON-RPC
Documentation
use accumulate_api::*;
use tokio::test;
extern crate reqwest;
use types::blocks_major::*;

#[tokio::main]
async fn main() {
	env_logger::init();
	let ov = get_last_minor_blocks().await;
	match ov {
		None => println!("no result"),
		Some(v) => println!("{:?}", v),
	}
}

async fn get_last_major_blocks() -> Option<MajorBlocksRangeResponse> {
	let client = Client::new_with_version(ACCUMULATE_MAINNET_RPC_URL.to_string(), 3);
	let resp = blocks::get_range_major(&client, "acc://bvn-Apollo.acme", 1, 100, true, true).await;

	match resp {
		Err(e) => {
			println!("{}", e);
			return None;
		}
		Ok(r) => return Some(r),
		Ok(_) | Err(_) => {
			println!("error");
			return None;
		}
	}
}

async fn get_first_major_blocks() -> Option<MajorBlocksRangeResponse> {
	let client = Client::new_with_version(ACCUMULATE_MAINNET_RPC_URL.to_string(), 3);
	let resp = blocks::get_range_major(&client, "acc://bvn-Apollo.acme", 1, 100, true, false).await;

	match resp {
		Err(e) => {
			println!("{}", e);
			return None;
		}
		Ok(r) => return Some(r),
		Ok(_) | Err(_) => {
			println!("error");
			return None;
		}
	}
}

async fn get_last_minor_blocks() -> Option<MajorBlocksRangeResponse> {
	let client = Client::new_with_version(ACCUMULATE_MAINNET_RPC_URL.to_string(), 3);
	let resp = blocks::get_range_minor(&client, "acc://bvn-Apollo.acme", 1, 10, true, true).await;

	match resp {
		Err(e) => {
			println!("{}", e);
			return None;
		}
		Ok(r) => return Some(r),
		Ok(_) | Err(_) => {
			println!("error");
			return None;
		}
	}
}