From ecff1d1cbe1113098371c92f25300330623b239b Mon Sep 17 00:00:00 2001 From: Thomas Eizinger Date: Thu, 11 Mar 2021 14:57:47 +1100 Subject: [PATCH] Remove indirection of constants We never use these constants anywhere else, inline them. --- swap/src/execution_params.rs | 88 ++++++++---------------------------- 1 file changed, 18 insertions(+), 70 deletions(-) diff --git a/swap/src/execution_params.rs b/swap/src/execution_params.rs index c9e25c9e..a42da3f5 100644 --- a/swap/src/execution_params.rs +++ b/swap/src/execution_params.rs @@ -1,5 +1,4 @@ use crate::bitcoin::{CancelTimelock, PunishTimelock}; -use conquer_once::Lazy; use std::time::Duration; #[derive(Debug, Copy, Clone)] @@ -28,12 +27,12 @@ pub struct Regtest; impl GetExecutionParams for Mainnet { fn get_execution_params() -> ExecutionParams { ExecutionParams { - bob_time_to_act: *mainnet::BOB_TIME_TO_ACT, - bitcoin_finality_confirmations: mainnet::BITCOIN_FINALITY_CONFIRMATIONS, - bitcoin_avg_block_time: *mainnet::BITCOIN_AVG_BLOCK_TIME, - monero_finality_confirmations: mainnet::MONERO_FINALITY_CONFIRMATIONS, - bitcoin_cancel_timelock: mainnet::BITCOIN_CANCEL_TIMELOCK, - bitcoin_punish_timelock: mainnet::BITCOIN_PUNISH_TIMELOCK, + bob_time_to_act: Duration::from_secs(10 * 60), + bitcoin_finality_confirmations: 3, + bitcoin_avg_block_time: Duration::from_secs(10 * 60), + monero_finality_confirmations: 15, + bitcoin_cancel_timelock: CancelTimelock::new(72), + bitcoin_punish_timelock: PunishTimelock::new(72), } } } @@ -41,12 +40,12 @@ impl GetExecutionParams for Mainnet { impl GetExecutionParams for Testnet { fn get_execution_params() -> ExecutionParams { ExecutionParams { - bob_time_to_act: *testnet::BOB_TIME_TO_ACT, - bitcoin_finality_confirmations: testnet::BITCOIN_FINALITY_CONFIRMATIONS, - bitcoin_avg_block_time: *testnet::BITCOIN_AVG_BLOCK_TIME, - monero_finality_confirmations: testnet::MONERO_FINALITY_CONFIRMATIONS, - bitcoin_cancel_timelock: testnet::BITCOIN_CANCEL_TIMELOCK, - bitcoin_punish_timelock: testnet::BITCOIN_PUNISH_TIMELOCK, + bob_time_to_act: Duration::from_secs(60 * 60), + bitcoin_finality_confirmations: 1, + bitcoin_avg_block_time: Duration::from_secs(5 * 60), + monero_finality_confirmations: 10, + bitcoin_cancel_timelock: CancelTimelock::new(12), + bitcoin_punish_timelock: PunishTimelock::new(6), } } } @@ -54,63 +53,12 @@ impl GetExecutionParams for Testnet { impl GetExecutionParams for Regtest { fn get_execution_params() -> ExecutionParams { ExecutionParams { - bob_time_to_act: *regtest::BOB_TIME_TO_ACT, - bitcoin_finality_confirmations: regtest::BITCOIN_FINALITY_CONFIRMATIONS, - bitcoin_avg_block_time: *regtest::BITCOIN_AVG_BLOCK_TIME, - monero_finality_confirmations: regtest::MONERO_FINALITY_CONFIRMATIONS, - bitcoin_cancel_timelock: regtest::BITCOIN_CANCEL_TIMELOCK, - bitcoin_punish_timelock: regtest::BITCOIN_PUNISH_TIMELOCK, + bob_time_to_act: Duration::from_secs(30), + bitcoin_finality_confirmations: 1, + bitcoin_avg_block_time: Duration::from_secs(5), + monero_finality_confirmations: 10, + bitcoin_cancel_timelock: CancelTimelock::new(100), + bitcoin_punish_timelock: PunishTimelock::new(50), } } } - -mod mainnet { - use crate::execution_params::*; - - // For each step, we are giving Bob 10 minutes to act. - pub static BOB_TIME_TO_ACT: Lazy = Lazy::new(|| Duration::from_secs(10 * 60)); - - pub static BITCOIN_FINALITY_CONFIRMATIONS: u32 = 3; - - pub static BITCOIN_AVG_BLOCK_TIME: Lazy = Lazy::new(|| Duration::from_secs(10 * 60)); - - pub static MONERO_FINALITY_CONFIRMATIONS: u32 = 15; - - // Set to 12 hours, arbitrary value to be reviewed properly - pub static BITCOIN_CANCEL_TIMELOCK: CancelTimelock = CancelTimelock::new(72); - pub static BITCOIN_PUNISH_TIMELOCK: PunishTimelock = PunishTimelock::new(72); -} - -mod testnet { - use crate::execution_params::*; - - pub static BOB_TIME_TO_ACT: Lazy = Lazy::new(|| Duration::from_secs(60 * 60)); - - // This does not reflect recommended values for mainnet! - pub static BITCOIN_FINALITY_CONFIRMATIONS: u32 = 1; - - pub static BITCOIN_AVG_BLOCK_TIME: Lazy = Lazy::new(|| Duration::from_secs(5 * 60)); - - pub static MONERO_FINALITY_CONFIRMATIONS: u32 = 10; - - // This does not reflect recommended values for mainnet! - pub static BITCOIN_CANCEL_TIMELOCK: CancelTimelock = CancelTimelock::new(12); - pub static BITCOIN_PUNISH_TIMELOCK: PunishTimelock = PunishTimelock::new(6); -} - -mod regtest { - use crate::execution_params::*; - - // In test, we set a shorter time to fail fast - pub static BOB_TIME_TO_ACT: Lazy = Lazy::new(|| Duration::from_secs(30)); - - pub static BITCOIN_FINALITY_CONFIRMATIONS: u32 = 1; - - pub static BITCOIN_AVG_BLOCK_TIME: Lazy = Lazy::new(|| Duration::from_secs(5)); - - pub static MONERO_FINALITY_CONFIRMATIONS: u32 = 10; - - pub static BITCOIN_CANCEL_TIMELOCK: CancelTimelock = CancelTimelock::new(100); - - pub static BITCOIN_PUNISH_TIMELOCK: PunishTimelock = PunishTimelock::new(50); -}