From 81cd70cf7d345f913f73d2368eb44c34da1368d6 Mon Sep 17 00:00:00 2001 From: Maciej Hirsz <1096222+maciejhirsz@users.noreply.github.com> Date: Wed, 16 Dec 2020 21:24:02 +0100 Subject: [PATCH] Parachain multiplexing (#295) * Handle continuation frames * Parachain multiplexing MVP * Better multiplexing * Rename NodeMultiplex -> ConnMultiplex * Cleaner `handle_message` --- backend/src/aggregator.rs | 20 ++-- backend/src/chain.rs | 14 ++- backend/src/node/connector.rs | 167 +++++++++++++++++++++++----------- backend/src/node/message.rs | 3 +- backend/src/types.rs | 1 + 5 files changed, 137 insertions(+), 68 deletions(-) diff --git a/backend/src/aggregator.rs b/backend/src/aggregator.rs index cb0c91e..29cdc36 100644 --- a/backend/src/aggregator.rs +++ b/backend/src/aggregator.rs @@ -6,7 +6,7 @@ use crate::feed::connector::{FeedConnector, Connected, FeedId}; use crate::util::DenseMap; use crate::feed::{self, FeedMessageSerializer}; use crate::chain::{self, Chain, ChainId, Label, GetNodeNetworkState}; -use crate::types::{NodeDetails, NodeId}; +use crate::types::{ConnId, NodeDetails, NodeId}; pub struct Aggregator { labels: HashMap, @@ -106,8 +106,11 @@ impl Actor for Aggregator { #[derive(Message)] #[rtype(result = "()")] pub struct AddNode { + /// Details of the node being added to the aggregator pub node: NodeDetails, - pub network_id: Option