referrerpolicy=no-referrer-when-downgrade

polkadot_collator_protocol/validator_side_experimental/
state.rs

1// Copyright (C) Parity Technologies (UK) Ltd.
2// This file is part of Polkadot.
3
4// Polkadot is free software: you can redistribute it and/or modify
5// it under the terms of the GNU General Public License as published by
6// the Free Software Foundation, either version 3 of the License, or
7// (at your option) any later version.
8
9// Polkadot is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12// GNU General Public License for more details.
13
14// You should have received a copy of the GNU General Public License
15// along with Polkadot.  If not, see <http://www.gnu.org/licenses/>.
16
17use crate::validator_side_experimental::{peer_manager::Backend, Metrics, PeerManager};
18use sp_keystore::KeystorePtr;
19
20/// All state relevant for the validator side of the protocol lives here.
21pub struct State<B> {
22	peer_manager: PeerManager<B>,
23	keystore: KeystorePtr,
24	metrics: Metrics,
25}
26
27impl<B: Backend> State<B> {
28	/// Instantiate a new subsystem `State`.
29	pub fn new(peer_manager: PeerManager<B>, keystore: KeystorePtr, metrics: Metrics) -> Self {
30		Self { peer_manager, keystore, metrics }
31	}
32}