solana/src/request.rs

31 lines
757 B
Rust
Raw Normal View History

2018-05-12 16:57:28 -07:00
//! The `request` module defines the messages for the thin client.
use hash::Hash;
use signature::{Pubkey, Signature};
2018-05-12 16:57:28 -07:00
#[cfg_attr(feature = "cargo-clippy", allow(large_enum_variant))]
#[derive(Serialize, Deserialize, Debug, Clone, Copy)]
2018-05-12 16:57:28 -07:00
pub enum Request {
GetBalance { key: Pubkey },
2018-05-14 08:35:10 -07:00
GetLastId,
GetTransactionCount,
GetSignature { signature: Signature },
GetFinality,
2018-05-12 16:57:28 -07:00
}
impl Request {
/// Verify the request is valid.
pub fn verify(&self) -> bool {
true
2018-05-12 16:57:28 -07:00
}
}
#[derive(Serialize, Deserialize, Debug)]
pub enum Response {
Balance { key: Pubkey, val: i64 },
LastId { id: Hash },
TransactionCount { transaction_count: u64 },
SignatureStatus { signature_status: bool },
Finality { time: usize },
2018-05-12 16:57:28 -07:00
}