1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
//! `tx` subcommand
use abscissa_core::clap::Parser;
use abscissa_core::{config::Override, Command, Runnable};
use ibc_relayer::config::Config;
mod channel;
pub(crate) mod client;
mod connection;
mod packet;
mod transfer;
mod upgrade;
/// `tx` subcommand
#[allow(clippy::large_enum_variant)]
#[derive(Command, Debug, Parser, Runnable)]
pub enum TxCmd {
/// Initialize a connection (ConnectionOpenInit)
ConnInit(connection::TxConnInitCmd),
/// Relay the connection attempt (ConnectionOpenTry)
ConnTry(connection::TxConnTryCmd),
/// Relay acknowledgment of a connection attempt (ConnectionOpenAck)
ConnAck(connection::TxConnAckCmd),
/// Confirm opening of a connection (ConnectionOpenConfirm)
ConnConfirm(connection::TxConnConfirmCmd),
/// Initialize a channel (ChannelOpenInit)
ChanOpenInit(channel::TxChanOpenInitCmd),
/// Relay the channel attempt (ChannelOpenTry)
ChanOpenTry(channel::TxChanOpenTryCmd),
/// Relay acknowledgment of a channel attempt (ChannelOpenAck)
ChanOpenAck(channel::TxChanOpenAckCmd),
/// Confirm opening of a channel (ChannelOpenConfirm)
ChanOpenConfirm(channel::TxChanOpenConfirmCmd),
/// Initiate the closing of a channel (ChannelCloseInit)
ChanCloseInit(channel::TxChanCloseInitCmd),
/// Confirm the closing of a channel (ChannelCloseConfirm)
ChanCloseConfirm(channel::TxChanCloseConfirmCmd),
/// Relay the channel upgrade attempt (ChannelUpgradeTry)
ChanUpgradeTry(channel::TxChanUpgradeTryCmd),
/// Relay the channel upgrade attempt (ChannelUpgradeAck)
ChanUpgradeAck(channel::TxChanUpgradeAckCmd),
/// Relay the channel upgrade attempt (ChannelUpgradeConfirm)
ChanUpgradeConfirm(channel::TxChanUpgradeConfirmCmd),
/// Relay the channel upgrade attempt (ChannelUpgradeOpen)
ChanUpgradeOpen(channel::TxChanUpgradeOpenCmd),
/// Relay the channel upgrade cancellation (ChannelUpgradeCancel)
ChanUpgradeCancel(channel::TxChanUpgradeCancelCmd),
/// Relay the channel upgrade timeout (ChannelUpgradeTimeout)
ChanUpgradeTimeout(channel::TxChanUpgradeTimeoutCmd),
/// Send a fungible token transfer test transaction (ICS20 MsgTransfer)
FtTransfer(transfer::TxIcs20MsgTransferCmd),
/// Relay receive or timeout packets
PacketRecv(packet::TxPacketRecvCmd),
/// Relay acknowledgment packets
PacketAck(packet::TxPacketAckCmd),
/// Send an IBC upgrade plan
UpgradeChain(upgrade::TxIbcUpgradeChainCmd),
}
impl Override<Config> for TxCmd {
fn override_config(&self, config: Config) -> Result<Config, abscissa_core::FrameworkError> {
match self {
Self::FtTransfer(cmd) => cmd.override_config(config),
_ => Ok(config),
}
}
}