Calls
addRelayer
add a relayer
Namespace
api.tx.xrplBridge.addRelayer
Type
function addRelayer(
relayer: SeedPrimitivesSignatureAccountId20
)
pruneSettledLedgerIndex
Namespace
api.tx.xrplBridge.pruneSettledLedgerIndex
Type
function pruneSettledLedgerIndex(
ledger_index: u32
)
removeRelayer
remove a relayer
Namespace
api.tx.xrplBridge.removeRelayer
Type
function removeRelayer(
relayer: SeedPrimitivesSignatureAccountId20
)
resetSettledXrplTxData
Namespace
api.tx.xrplBridge.resetSettledXrplTxData
Type
function resetSettledXrplTxData(
highest_settled_ledger_index: u32,
submission_window_width: u32,
highest_pruned_ledger_index: Option<u32>,
settled_tx_data: Option<Vec<(H512,u32,PalletXrplBridgeXrpTransaction,SeedPrimitivesSignatureAccountId20)>>
)
setDoorAddress
Set XRPL door address managed by this pallet
Namespace
api.tx.xrplBridge.setDoorAddress
Type
function setDoorAddress(
door_address: H160
)
setDoorTxFee
Set the door tx fee amount
Namespace
api.tx.xrplBridge.setDoorTxFee
Type
function setDoorTxFee(
fee: u64
)
setPaymentDelay
Sets the payment delay payment_delay is a tuple of payment_threshold and delay in blocks
Namespace
api.tx.xrplBridge.setPaymentDelay
Type
function setPaymentDelay(
payment_delay: Option<(u128,u32)>
)
setTicketSequenceCurrentAllocation
Set the door account current ticket sequence params for current allocation - force set
Namespace
api.tx.xrplBridge.setTicketSequenceCurrentAllocation
Type
function setTicketSequenceCurrentAllocation(
ticket_sequence: u32,
start_ticket_sequence: u32,
ticket_bucket_size: u32
)
setTicketSequenceNextAllocation
Set the door account ticket sequence params for the next allocation
Namespace
api.tx.xrplBridge.setTicketSequenceNextAllocation
Type
function setTicketSequenceNextAllocation(
start_ticket_sequence: u32,
ticket_bucket_size: u32
)
setXrpSourceTag
Set the xrp source tag
Namespace
api.tx.xrplBridge.setXrpSourceTag
Type
function setXrpSourceTag(
source_tag: u32
)
submitChallenge
Submit xrp transaction challenge
Namespace
api.tx.xrplBridge.submitChallenge
Type
function submitChallenge(
transaction_hash: H512
)
submitTransaction
Submit xrp transaction
Namespace
api.tx.xrplBridge.submitTransaction
Type
function submitTransaction(
ledger_index: u64,
transaction_hash: H512,
transaction: PalletXrplBridgeXrplTxData,
timestamp: u64
)
withdrawXrp
Withdraw xrp transaction
Namespace
api.tx.xrplBridge.withdrawXrp
Type
function withdrawXrp(
amount: u128,
destination: H160
)
withdrawXrpWithDestinationTag
Withdraw xrp transaction
Namespace
api.tx.xrplBridge.withdrawXrpWithDestinationTag
Type
function withdrawXrpWithDestinationTag(
amount: u128,
destination: H160,
destination_tag: u32
)
Storage
challengeXRPTransactionList
Challenge received for a transaction mapped by hash, will be cleared when validator validates
Namespace
api.query.xrplBridge.challengeXRPTransactionList
Type
function challengeXRPTransactionList(
H512
): Option<SeedPrimitivesSignatureAccountId20>
delayedPayments
Map from DelayedPaymentId to (sender, WithdrawTx)
Namespace
api.query.xrplBridge.delayedPayments
Type
function delayedPayments(
u64
): Option<PalletXrplBridgeDelayedWithdrawal>
delayedPaymentSchedule
Map from block number to DelayedPatmentIds scheduled for that block
Namespace
api.query.xrplBridge.delayedPaymentSchedule
Type
function delayedPaymentSchedule(
u32
): Option<Vec<u64>>
doorAddress
The door address on XRPL
Namespace
api.query.xrplBridge.doorAddress
Type
function doorAddress(
): Option<H160>
doorTicketSequence
The current ticket sequence of the XRPL door account
Namespace
api.query.xrplBridge.doorTicketSequence
Type
function doorTicketSequence(
): u32
doorTicketSequenceParams
The Ticket sequence params of the XRPL door account for the current allocation
Namespace
api.query.xrplBridge.doorTicketSequenceParams
Type
function doorTicketSequenceParams(
): PalletXrplBridgeXrplTicketSequenceParams
doorTicketSequenceParamsNext
The Ticket sequence params of the XRPL door account for the next allocation
Namespace
api.query.xrplBridge.doorTicketSequenceParamsNext
Type
function doorTicketSequenceParamsNext(
): PalletXrplBridgeXrplTicketSequenceParams
doorTxFee
The flat fee for XRPL door txs
Namespace
api.query.xrplBridge.doorTxFee
Type
function doorTxFee(
): u64
highestPrunedLedgerIndex
Highest pruned XRPL ledger index
Namespace
api.query.xrplBridge.highestPrunedLedgerIndex
Type
function highestPrunedLedgerIndex(
): u32
highestSettledLedgerIndex
Highest settled XRPL ledger index
Namespace
api.query.xrplBridge.highestSettledLedgerIndex
Type
function highestSettledLedgerIndex(
): u32
nextDelayedPaymentId
The next available delayedPaymentId
Namespace
api.query.xrplBridge.nextDelayedPaymentId
Type
function nextDelayedPaymentId(
): u64
nextDelayProcessBlock
The highest block number that has had all delayed payments processed
Namespace
api.query.xrplBridge.nextDelayProcessBlock
Type
function nextDelayProcessBlock(
): u32
paymentDelay
Payment delay for any withdraw over the specified Balance threshold
Namespace
api.query.xrplBridge.paymentDelay
Type
function paymentDelay(
): Option<(u128,u32)>
processXRPTransaction
Temporary storage to set the transactions ready to be processed at specified block number
Namespace
api.query.xrplBridge.processXRPTransaction
Type
function processXRPTransaction(
u32
): Option<Vec<H512>>
processXRPTransactionDetails
Stores submitted transactions from XRPL waiting to be processed Transactions will be cleared according to the submission window after processing
Namespace
api.query.xrplBridge.processXRPTransactionDetails
Type
function processXRPTransactionDetails(
H512
): Option<(u64,PalletXrplBridgeXrpTransaction,SeedPrimitivesSignatureAccountId20)>
relayer
List of all XRP transaction relayers
Namespace
api.query.xrplBridge.relayer
Type
function relayer(
SeedPrimitivesSignatureAccountId20
): Option<bool>
settledXRPTransactionDetails
Settled xrp transactions stored against XRPL ledger index
Namespace
api.query.xrplBridge.settledXRPTransactionDetails
Type
function settledXRPTransactionDetails(
u32
): Option<Vec<H512>>
sourceTag
Source tag to be used to indicate the transaction is happening from futureverse
Namespace
api.query.xrplBridge.sourceTag
Type
function sourceTag(
): u32
submissionWindowWidth
XRPL transactions submission window width in ledger indexes
Namespace
api.query.xrplBridge.submissionWindowWidth
Type
function submissionWindowWidth(
): u32
ticketSequenceThresholdReachedEmitted
Keeps track whether the TicketSequenceThresholdReached event is emitted
Namespace
api.query.xrplBridge.ticketSequenceThresholdReachedEmitted
Type
function ticketSequenceThresholdReachedEmitted(
): bool
Events
DoorAddressSet
Namespace
api.events.xrplBridge.DoorAddressSet
Type
type DoorAddressSet = {
param0: H160
}
DoorNextTicketSequenceParamSet
Namespace
api.events.xrplBridge.DoorNextTicketSequenceParamSet
Type
type DoorNextTicketSequenceParamSet = {
ticket_sequence_start_next: u32,
ticket_bucket_size_next: u32
}
DoorTicketSequenceParamSet
Namespace
api.events.xrplBridge.DoorTicketSequenceParamSet
Type
type DoorTicketSequenceParamSet = {
ticket_sequence: u32,
ticket_sequence_start: u32,
ticket_bucket_size: u32
}
LedgerIndexManualPrune
Namespace
api.events.xrplBridge.LedgerIndexManualPrune
Type
type LedgerIndexManualPrune = {
ledger_index: u32,
total_cleared: u32
}
NotSupportedTransaction
Transaction not supported
Namespace
api.events.xrplBridge.NotSupportedTransaction
Type
type NotSupportedTransaction = {
}
PaymentDelayRemoved
The payment delay was removed
Namespace
api.events.xrplBridge.PaymentDelayRemoved
Type
type PaymentDelayRemoved = {
}
PaymentDelaySet
The payment delay was set
Namespace
api.events.xrplBridge.PaymentDelaySet
Type
type PaymentDelaySet = {
payment_threshold: u128,
delay: u32
}
ProcessingFailed
Processing an event failed
Namespace
api.events.xrplBridge.ProcessingFailed
Type
type ProcessingFailed = {
param0: u64,
param1: H512,
param2: SpRuntimeDispatchError
}
ProcessingOk
Processing an event succeeded
Namespace
api.events.xrplBridge.ProcessingOk
Type
type ProcessingOk = {
param0: u64,
param1: H512
}
RelayerAdded
Namespace
api.events.xrplBridge.RelayerAdded
Type
type RelayerAdded = {
param0: SeedPrimitivesSignatureAccountId20
}
RelayerRemoved
Namespace
api.events.xrplBridge.RelayerRemoved
Type
type RelayerRemoved = {
param0: SeedPrimitivesSignatureAccountId20
}
TicketSequenceThresholdReached
Namespace
api.events.xrplBridge.TicketSequenceThresholdReached
Type
type TicketSequenceThresholdReached = {
param0: u32
}
TransactionAdded
Namespace
api.events.xrplBridge.TransactionAdded
Type
type TransactionAdded = {
param0: u64,
param1: H512
}
TransactionChallenge
Namespace
api.events.xrplBridge.TransactionChallenge
Type
type TransactionChallenge = {
param0: u64,
param1: H512
}
WithdrawDelayed
A withdrawal was delayed as it was above the min_payment threshold
Namespace
api.events.xrplBridge.WithdrawDelayed
Type
type WithdrawDelayed = {
sender: SeedPrimitivesSignatureAccountId20,
amount: u128,
destination: H160,
delayed_payment_id: u64
}
WithdrawRequest
Request to withdraw some XRP amount to XRPL
Namespace
api.events.xrplBridge.WithdrawRequest
Type
type WithdrawRequest = {
proof_id: u64,
sender: SeedPrimitivesSignatureAccountId20,
amount: u128,
destination: H160
}
Errors
CannotProcessMoreTransactionsAtThatBlock
Cannot process more transactions at that block
Namespace
api.errors.xrplBridge.CannotProcessMoreTransactionsAtThatBlock
CannotPruneActiveLedgerIndex
This ledger index is within the submission window and can't be pruned
Namespace
api.errors.xrplBridge.CannotPruneActiveLedgerIndex
DelayScheduleAtCapacity
The scheduled block cannot hold any more delayed payments
Namespace
api.errors.xrplBridge.DelayScheduleAtCapacity
DoorAddressNotSet
The door address has not been configured
Namespace
api.errors.xrplBridge.DoorAddressNotSet
InvalidHighestPrunedIndex
highest_pruned_ledger_index must be less than highest_settled_ledger_index - submission_window_width
Namespace
api.errors.xrplBridge.InvalidHighestPrunedIndex
InvalidSigners
The signers are not known by ethy
Namespace
api.errors.xrplBridge.InvalidSigners
NextTicketSequenceParamsInvalid
The NextTicketSequenceParams is invalid
Namespace
api.errors.xrplBridge.NextTicketSequenceParamsInvalid
NextTicketSequenceParamsNotSet
The NextTicketSequenceParams has not been set
Namespace
api.errors.xrplBridge.NextTicketSequenceParamsNotSet
NoAvailablePaymentIds
The paymentIds have been exhausted
Namespace
api.errors.xrplBridge.NoAvailablePaymentIds
NotPermitted
Namespace
api.errors.xrplBridge.NotPermitted
NoTransactionDetails
There is no settledXRPTransactionDetails for this ledger index
Namespace
api.errors.xrplBridge.NoTransactionDetails
OutSideSubmissionWindow
Transaction submitted is outside the submission window
Namespace
api.errors.xrplBridge.OutSideSubmissionWindow
RelayerDoesNotExists
Namespace
api.errors.xrplBridge.RelayerDoesNotExists
TicketSequenceParamsInvalid
The TicketSequenceParams is invalid
Namespace
api.errors.xrplBridge.TicketSequenceParamsInvalid
TooManySigners
XRPL does not allow more than 8 signers for door address
Namespace
api.errors.xrplBridge.TooManySigners
TooManyTransactionsPerLedger
Too Many transactions per ledger
Namespace
api.errors.xrplBridge.TooManyTransactionsPerLedger
TxReplay
Submitted a duplicate transaction hash
Namespace
api.errors.xrplBridge.TxReplay
WithdrawInvalidAmount
Withdraw amount must be non-zero and < = u64
Namespace
api.errors.xrplBridge.WithdrawInvalidAmount
Constants
challengePeriod
Challenge Period to wait for a challenge before processing the transaction
Namespace
api.consts.xrplBridge.challengePeriod
Type
type challengePeriod = u32
delayedPaymentBlockLimit
Upper limit to the number of blocks we can check per block for delayed payments
Namespace
api.consts.xrplBridge.delayedPaymentBlockLimit
Type
type delayedPaymentBlockLimit = u32
maxDelayedPaymentsPerBlock
Maximum number of delayed transactions that can be processed in a single block
Namespace
api.consts.xrplBridge.maxDelayedPaymentsPerBlock
Type
type maxDelayedPaymentsPerBlock = u32
maxPrunedTransactionsPerBlock
Maximum number of transactions that can be pruned in on_idle
Namespace
api.consts.xrplBridge.maxPrunedTransactionsPerBlock
Type
type maxPrunedTransactionsPerBlock = u32
xrpAssetId
XRP Asset Id set at runtime
Namespace
api.consts.xrplBridge.xrpAssetId
Type
type xrpAssetId = u32