Consensus Engines Implementation: Aura (#911)

* Generalize BlockImport

 - move ImportBlock, BlockOrigin, ImportResult into shared sr-primitives
 - let Consensus provide  and  traits again
 - update consensus traits to latest development
 - implement traits on client::Client, test_client::TestClient
 - update RHD to use the new import_block API

* Move ImportBlock into consensus-common
* Send import notification in aura tests
* Integrating aura into service
* Make Signatures more generic
* Aura Block Production with the given key
* run aura on the thread pool
* start at exact step start in aura
* Add needed wasm blob, in leiu of better solutions.
* Make API ids consistent with traits and bring upstream for sharing.
* Add decrease_free_balance to Balances module
* Encode `Metadata` once instead of two times
* Bitops include xor
* Upgrade key module.
* Default pages to somewhat bigger.
* Introduce upgrade key into node
* Add `Created` event
This commit is contained in:
Benjamin Kampmann
2018-10-27 15:59:18 +02:00
committed by GitHub
parent c0f7021427
commit 50adea6220
82 changed files with 3125 additions and 1902 deletions
+16 -16
View File
@@ -776,41 +776,41 @@ macro_rules! construct_simple_protocol {
fn on_connect(
&mut self,
ctx: &mut $crate::Context<$block>,
who: $crate::NodeIndex,
status: $crate::StatusMessage<$block>
_ctx: &mut $crate::Context<$block>,
_who: $crate::NodeIndex,
_status: $crate::StatusMessage<$block>
) {
$( self.$sub_protocol_name.on_connect(ctx, who, status); )*
$( self.$sub_protocol_name.on_connect(_ctx, _who, _status); )*
}
fn on_disconnect(&mut self, ctx: &mut $crate::Context<$block>, who: $crate::NodeIndex) {
$( self.$sub_protocol_name.on_disconnect(ctx, who); )*
fn on_disconnect(&mut self, _ctx: &mut $crate::Context<$block>, _who: $crate::NodeIndex) {
$( self.$sub_protocol_name.on_disconnect(_ctx, _who); )*
}
fn on_message(
&mut self,
ctx: &mut $crate::Context<$block>,
who: $crate::NodeIndex,
message: &mut Option<$crate::message::Message<$block>>
_ctx: &mut $crate::Context<$block>,
_who: $crate::NodeIndex,
_message: &mut Option<$crate::message::Message<$block>>
) {
$( self.$sub_protocol_name.on_message(ctx, who, message); )*
$( self.$sub_protocol_name.on_message(_ctx, _who, _message); )*
}
fn on_abort(&mut self) {
$( self.$sub_protocol_name.on_abort(); )*
}
fn maintain_peers(&mut self, ctx: &mut $crate::Context<$block>) {
$( self.$sub_protocol_name.maintain_peers(ctx); )*
fn maintain_peers(&mut self, _ctx: &mut $crate::Context<$block>) {
$( self.$sub_protocol_name.maintain_peers(_ctx); )*
}
fn on_block_imported(
&mut self,
ctx: &mut $crate::Context<$block>,
hash: <$block as $crate::BlockT>::Hash,
header: &<$block as $crate::BlockT>::Header
_ctx: &mut $crate::Context<$block>,
_hash: <$block as $crate::BlockT>::Hash,
_header: &<$block as $crate::BlockT>::Header
) {
$( self.$sub_protocol_name.on_block_imported(ctx, hash, header); )*
$( self.$sub_protocol_name.on_block_imported(_ctx, _hash, _header); )*
}
}
}