Trait pallet_atomic_swap::pallet::Config
source · pub trait Config: Config {
type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>;
type SwapAction: SwapAction<Self::AccountId, Self> + Parameter + MaxEncodedLen;
type ProofLimit: Get<u32>;
}
Expand description
Atomic swap’s pallet configuration trait.
Required Associated Types
sourcetype RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>
type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>
The overarching event type.
sourcetype SwapAction: SwapAction<Self::AccountId, Self> + Parameter + MaxEncodedLen
type SwapAction: SwapAction<Self::AccountId, Self> + Parameter + MaxEncodedLen
Swap action.
sourcetype ProofLimit: Get<u32>
type ProofLimit: Get<u32>
Limit of proof size.
Atomic swap is only atomic if once the proof is revealed, both parties can submit the proofs on-chain. If A is the one that generates the proof, then it requires that either:
- A’s blockchain has the same proof length limit as B’s blockchain.
- Or A’s blockchain has shorter proof length limit as B’s blockchain.
If B sees A is on a blockchain with larger proof length limit, then it should kindly refuse to accept the atomic swap request if A generates the proof, and asks that B generates the proof instead.