Simple signing queue, confirmation APIs exposed in signer WebSockets. (#1182)

* Splitting methods requiring signing into separate trait

* Single place where RPC apis are created.

* Separating eth_filter

* Separating eth_signing

* Stubs for Personal Signer methods

* Test for EthSigningQueueClient

* TransactionConfirmation API

* Exposing PersonalSigner API

* Defining ApiSets dependent on context

* Removing types

* Fixing default impl

* Fixing un-mocked tests

* Update signing_queue.rs

[ci skip]

* Removing unused import [ci skip]
This commit is contained in:
Tomasz Drwięga
2016-06-01 19:37:34 +02:00
committed by Gav Wood
parent b9b0ce8d65
commit 99e26b8480
35 changed files with 1140 additions and 544 deletions

View File

@@ -25,6 +25,7 @@ use std::sync::Arc;
use std::net::SocketAddr;
use util::panics::{PanicHandler, OnPanicListener, MayPanic};
use jsonrpc_core::{IoHandler, IoDelegate};
use rpc::Extendable;
mod session;
@@ -57,6 +58,12 @@ impl Default for ServerBuilder {
}
}
impl Extendable for ServerBuilder {
fn add_delegate<D: Send + Sync + 'static>(&self, delegate: IoDelegate<D>) {
self.handler.add_delegate(delegate);
}
}
impl ServerBuilder {
/// Creates new `ServerBuilder`
pub fn new() -> Self {
@@ -65,11 +72,6 @@ impl ServerBuilder {
}
}
/// Adds rpc delegate
pub fn add_delegate<D>(&self, delegate: IoDelegate<D>) where D: Send + Sync + 'static {
self.handler.add_delegate(delegate);
}
/// Starts a new `WebSocket` server in separate thread.
/// Returns a `Server` handle which closes the server when droped.
pub fn start(self, addr: SocketAddr) -> Result<Server, ServerError> {