network interface stub
This commit is contained in:
parent
a6e8f376ca
commit
7ada7d0323
|
@ -1,7 +1,9 @@
|
|||
mod blockchain;
|
||||
mod miner;
|
||||
mod raw;
|
||||
mod network;
|
||||
|
||||
pub use self::blockchain::BlockChain;
|
||||
pub use self::miner::Miner;
|
||||
pub use self::raw::Raw;
|
||||
pub use self::network::Network;
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
use jsonrpc_core::Error;
|
||||
use v1::types::AddNodeOperation;
|
||||
|
||||
build_rpc_trait! {
|
||||
/// Parity-bitcoin network interface
|
||||
pub trait Network {
|
||||
/// Add/remove/connecto to the node
|
||||
#[rpc(name = "addnode")]
|
||||
fn add_node(&self, String, AddNodeOperation) -> Result<(), Error>;
|
||||
}
|
||||
}
|
|
@ -9,6 +9,7 @@ mod raw_block;
|
|||
mod raw_transaction;
|
||||
mod script;
|
||||
mod uint;
|
||||
mod nodes;
|
||||
|
||||
pub use self::block_template::{BlockTemplate, BlockTemplateTransaction};
|
||||
pub use self::block_template_request::{BlockTemplateRequest, BlockTemplateRequestMode};
|
||||
|
@ -21,3 +22,4 @@ pub use self::raw_block::RawBlock;
|
|||
pub use self::raw_transaction::RawTransaction;
|
||||
pub use self::script::ScriptType;
|
||||
pub use self::uint::U256;
|
||||
pub use self::nodes::AddNodeOperation;
|
||||
|
|
|
@ -0,0 +1,31 @@
|
|||
use serde::{Deserialize, Deserializer};
|
||||
|
||||
#[derive(Debug, PartialEq)]
|
||||
pub enum AddNodeOperation {
|
||||
Add,
|
||||
Remove,
|
||||
OneTry,
|
||||
}
|
||||
|
||||
impl Deserialize for AddNodeOperation {
|
||||
fn deserialize<D>(deserializer: &mut D) -> Result<Self, D::Error> where D: Deserializer {
|
||||
use serde::de::Visitor;
|
||||
|
||||
struct DummyVisitor;
|
||||
|
||||
impl Visitor for DummyVisitor {
|
||||
type Value = AddNodeOperation;
|
||||
|
||||
fn visit_str<E>(&mut self, value: &str) -> Result<AddNodeOperation, E> where E: ::serde::de::Error {
|
||||
match value {
|
||||
"add" => Ok(AddNodeOperation::Add),
|
||||
"remove" => Ok(AddNodeOperation::Remove),
|
||||
"onetry" => Ok(AddNodeOperation::OneTry),
|
||||
_ => Err(E::invalid_value(&format!("unknown ScriptType variant: {}", value))),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
deserializer.deserialize(DummyVisitor)
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue