Skip to content

Commit f4f5bbe

Browse files
committed
fix(relay): fix clippy warning
1 parent 4a5f54f commit f4f5bbe

File tree

5 files changed

+62
-51
lines changed

5 files changed

+62
-51
lines changed

mithril-relay/src/commands/signer.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use slog::error;
1010
use mithril_common::CardanoNetwork;
1111
use mithril_common::StdResult;
1212

13-
use crate::{SignerRelay, SignerRelayMode};
13+
use crate::{SignerRelay, SignerRelayConfiguration, SignerRelayMode};
1414

1515
use super::CommandContext;
1616

@@ -81,19 +81,19 @@ impl SignerCommand {
8181
let cardano_network =
8282
CardanoNetwork::from_code(self.network.to_owned(), self.network_magic)?;
8383

84-
let mut relay = SignerRelay::start(
85-
&addr,
86-
&server_port,
84+
let mut relay = SignerRelay::start(SignerRelayConfiguration {
85+
address: &addr,
86+
server_port: &server_port,
8787
#[cfg(feature = "future_dmq")]
88-
&self.dmq_node_socket_path,
88+
dmq_node_socket_path: &self.dmq_node_socket_path,
8989
#[cfg(feature = "future_dmq")]
90-
&cardano_network,
90+
cardano_network: &cardano_network,
9191
signer_registration_mode,
9292
signature_registration_mode,
93-
&aggregator_endpoint,
94-
&signer_repeater_delay,
93+
aggregator_endpoint: &aggregator_endpoint,
94+
signer_repeater_delay: &signer_repeater_delay,
9595
logger,
96-
)
96+
})
9797
.await?;
9898
if let Some(dial_to_address) = dial_to {
9999
relay.dial_peer(dial_to_address.clone())?;

mithril-relay/src/lib.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,10 @@ pub mod p2p;
77
mod relay;
88
mod repeater;
99

10-
pub use commands::Args;
11-
pub use commands::RelayCommands;
12-
pub use relay::AggregatorRelay;
13-
pub use relay::PassiveRelay;
14-
pub use relay::SignerRelay;
15-
pub use relay::SignerRelayMode;
10+
pub use commands::{Args, RelayCommands};
11+
pub use relay::{
12+
AggregatorRelay, PassiveRelay, SignerRelay, SignerRelayConfiguration, SignerRelayMode,
13+
};
1614

1715
/// The P2P topic names used by Mithril
1816
pub mod mithril_p2p_topic {

mithril-relay/src/relay/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,4 @@ mod signer;
44

55
pub use aggregator::AggregatorRelay;
66
pub use passive::PassiveRelay;
7-
pub use signer::SignerRelay;
8-
pub use signer::SignerRelayMode;
7+
pub use signer::{SignerRelay, SignerRelayConfiguration, SignerRelayMode};

mithril-relay/src/relay/signer.rs

Lines changed: 36 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,30 @@ struct HTTPServerConfiguration<'a> {
5656
logger: &'a Logger,
5757
}
5858

59+
/// Configuration for a Mithril Signer Relay
60+
pub struct SignerRelayConfiguration<'a> {
61+
/// Address on which the HTTP server will listen
62+
pub address: &'a Multiaddr,
63+
/// Port on which the HTTP server will listen
64+
pub server_port: &'a u16,
65+
/// Path to the DMQ node socket file
66+
#[cfg(feature = "future_dmq")]
67+
pub dmq_node_socket_path: &'a Path,
68+
/// Cardano network
69+
#[cfg(feature = "future_dmq")]
70+
pub cardano_network: &'a CardanoNetwork,
71+
/// Signer registration mode
72+
pub signer_registration_mode: &'a SignerRelayMode,
73+
/// Signature registration mode
74+
pub signature_registration_mode: &'a SignerRelayMode,
75+
/// Aggregator endpoint URL
76+
pub aggregator_endpoint: &'a str,
77+
/// Delay for repeating a signer registration message
78+
pub signer_repeater_delay: &'a Duration,
79+
/// Logger for the signer relay
80+
pub logger: &'a Logger,
81+
}
82+
5983
/// A relay for a Mithril signer
6084
pub struct SignerRelay {
6185
http_server: TestHttpServer,
@@ -73,32 +97,22 @@ pub struct SignerRelay {
7397

7498
impl SignerRelay {
7599
/// Start a relay for a Mithril signer
76-
pub async fn start(
77-
address: &Multiaddr,
78-
server_port: &u16,
79-
#[cfg(feature = "future_dmq")] dmq_node_socket_path: &Path,
80-
#[cfg(feature = "future_dmq")] cardano_network: &CardanoNetwork,
81-
signer_registration_mode: &SignerRelayMode,
82-
signature_registration_mode: &SignerRelayMode,
83-
aggregator_endpoint: &str,
84-
signer_repeater_delay: &Duration,
85-
logger: &Logger,
86-
) -> StdResult<Self> {
87-
let relay_logger = logger.new_with_component_name::<Self>();
88-
debug!(relay_logger, "Starting..."; "signer_registration_mode" => ?signer_registration_mode, "signature_registration_mode" => ?signature_registration_mode);
100+
pub async fn start(config: SignerRelayConfiguration<'_>) -> StdResult<Self> {
101+
let relay_logger = config.logger.new_with_component_name::<Self>();
102+
debug!(relay_logger, "Starting..."; "signer_registration_mode" => ?config.signer_registration_mode, "signature_registration_mode" => ?config.signature_registration_mode);
89103
let (signature_tx, signature_rx) = unbounded_channel::<RegisterSignatureMessageHttp>();
90104
let (signer_tx, signer_rx) = unbounded_channel::<RegisterSignerMessage>();
91105
let signer_repeater = Arc::new(MessageRepeater::new(
92106
signer_tx.clone(),
93-
signer_repeater_delay.to_owned(),
94-
logger,
107+
config.signer_repeater_delay.to_owned(),
108+
config.logger,
95109
));
96-
let peer = Peer::new(address).start().await?;
110+
let peer = Peer::new(config.address).start().await?;
97111
let http_server = Self::start_http_server(&HTTPServerConfiguration {
98-
server_port,
99-
signer_registration_mode: signer_registration_mode.to_owned(),
100-
signature_registration_mode: signature_registration_mode.to_owned(),
101-
aggregator_endpoint,
112+
server_port: config.server_port,
113+
signer_registration_mode: config.signer_registration_mode.to_owned(),
114+
signature_registration_mode: config.signature_registration_mode.to_owned(),
115+
aggregator_endpoint: config.aggregator_endpoint,
102116
signer_tx: signer_tx.clone(),
103117
signature_tx: signature_tx.clone(),
104118
signer_repeater: signer_repeater.clone(),
@@ -113,8 +127,8 @@ impl SignerRelay {
113127
let (signature_dmq_tx, signature_dmq_rx) = unbounded_channel::<DmqMessage>();
114128
#[cfg(unix)]
115129
let _dmq_publisher_server = Self::start_dmq_publisher_server(
116-
dmq_node_socket_path,
117-
cardano_network,
130+
config.dmq_node_socket_path,
131+
config.cardano_network,
118132
signature_dmq_tx,
119133
stop_rx,
120134
relay_logger.clone(),

mithril-relay/tests/register_signer_signature.rs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ use mithril_common::CardanoNetwork;
1212
use mithril_common::messages::{RegisterSignatureMessageHttp, RegisterSignerMessage};
1313
use mithril_common::test_utils::double::Dummy;
1414
use mithril_relay::{
15-
PassiveRelay, SignerRelay, SignerRelayMode,
15+
PassiveRelay, SignerRelay, SignerRelayConfiguration, SignerRelayMode,
1616
p2p::{BroadcastMessage, PeerBehaviourEvent, PeerEvent},
1717
};
1818

@@ -49,19 +49,19 @@ async fn should_receive_registrations_from_signers_when_subscribed_to_pubsub() {
4949
let signature_registration_mode = SignerRelayMode::P2P;
5050
let aggregator_endpoint = "http://0.0.0.0:1234".to_string();
5151
let signer_repeater_delay = Duration::from_secs(100);
52-
let mut signer_relay = SignerRelay::start(
53-
&addr,
54-
&server_port,
52+
let mut signer_relay = SignerRelay::start(SignerRelayConfiguration {
53+
address: &addr,
54+
server_port: &server_port,
5555
#[cfg(feature = "future_dmq")]
56-
&dmq_node_socket_path,
56+
dmq_node_socket_path: &dmq_node_socket_path,
5757
#[cfg(feature = "future_dmq")]
58-
&cardano_network,
59-
&signer_registration_mode,
60-
&signature_registration_mode,
61-
&aggregator_endpoint,
62-
&signer_repeater_delay,
63-
&logger,
64-
)
58+
cardano_network: &cardano_network,
59+
signer_registration_mode: &signer_registration_mode,
60+
signature_registration_mode: &signature_registration_mode,
61+
aggregator_endpoint: &aggregator_endpoint,
62+
signer_repeater_delay: &signer_repeater_delay,
63+
logger: &logger,
64+
})
6565
.await
6666
.expect("Relay start failed");
6767
let relay_address = signer_relay.address();

0 commit comments

Comments
 (0)