2020-11-25 21:55:56 -05:00
|
|
|
//! Run an XMR/BTC swap in the role of Alice.
|
|
|
|
//! Alice holds XMR and wishes receive BTC.
|
2021-03-02 21:17:09 -05:00
|
|
|
use crate::{bitcoin, database::Database, execution_params::ExecutionParams, monero};
|
2021-02-07 22:21:54 -05:00
|
|
|
use std::sync::Arc;
|
2021-01-13 21:23:03 -05:00
|
|
|
use uuid::Uuid;
|
2020-11-25 21:55:56 -05:00
|
|
|
|
2021-02-03 19:39:15 -05:00
|
|
|
pub use self::{
|
2021-02-08 19:15:55 -05:00
|
|
|
behaviour::{Behaviour, OutEvent},
|
2021-02-03 19:39:15 -05:00
|
|
|
event_loop::{EventLoop, EventLoopHandle},
|
2021-02-03 19:56:58 -05:00
|
|
|
execution_setup::Message1,
|
2021-02-03 19:39:15 -05:00
|
|
|
state::*,
|
|
|
|
swap::{run, run_until},
|
|
|
|
transfer_proof::TransferProof,
|
|
|
|
};
|
2021-02-03 19:45:54 -05:00
|
|
|
pub use execution_setup::Message3;
|
2021-02-03 19:39:15 -05:00
|
|
|
|
2021-02-07 23:14:22 -05:00
|
|
|
mod behaviour;
|
2021-01-26 22:14:20 -05:00
|
|
|
mod encrypted_signature;
|
2020-12-09 21:19:18 -05:00
|
|
|
pub mod event_loop;
|
2021-02-03 00:45:43 -05:00
|
|
|
mod execution_setup;
|
2021-01-04 22:08:36 -05:00
|
|
|
pub mod state;
|
2020-12-15 00:49:38 -05:00
|
|
|
mod steps;
|
2020-11-26 19:30:07 -05:00
|
|
|
pub mod swap;
|
2021-01-26 22:14:20 -05:00
|
|
|
mod transfer_proof;
|
2020-11-15 18:21:17 -05:00
|
|
|
|
2021-01-18 03:56:43 -05:00
|
|
|
pub struct Swap {
|
|
|
|
pub state: AliceState,
|
|
|
|
pub event_loop_handle: EventLoopHandle,
|
|
|
|
pub bitcoin_wallet: Arc<bitcoin::Wallet>,
|
|
|
|
pub monero_wallet: Arc<monero::Wallet>,
|
2021-01-26 21:33:32 -05:00
|
|
|
pub execution_params: ExecutionParams,
|
2021-01-18 03:56:43 -05:00
|
|
|
pub swap_id: Uuid,
|
2021-02-08 19:15:55 -05:00
|
|
|
pub db: Arc<Database>,
|
2021-01-18 03:56:43 -05:00
|
|
|
}
|