PreconditionsV2Xdr

data class PreconditionsV2Xdr(val timeBounds: TimeBoundsXdr?, val ledgerBounds: LedgerBoundsXdr?, val minSeqNum: SequenceNumberXdr?, val minSeqAge: DurationXdr, val minSeqLedgerGap: Uint32Xdr, val extraSigners: List<SignerKeyXdr>)

XDR Source: struct PreconditionsV2 { TimeBounds* timeBounds;

// Transaction only valid for ledger numbers n such that
// minLedger <= n < maxLedger (if maxLedger == 0, then
// only minLedger is checked)
LedgerBounds* ledgerBounds;

// If NULL, only valid when sourceAccount's sequence number
// is seqNum - 1.  Otherwise, valid when sourceAccount's
// sequence number n satisfies minSeqNum <= n < tx.seqNum.
// Note that after execution the account's sequence number
// is always raised to tx.seqNum, and a transaction is not
// valid if tx.seqNum is too high to ensure replay protection.
SequenceNumber* minSeqNum;

// For the transaction to be valid, the current ledger time must
// be at least minSeqAge greater than sourceAccount's seqTime.
Duration minSeqAge;

// For the transaction to be valid, the current ledger number
// must be at least minSeqLedgerGap greater than sourceAccount's
// seqLedger.
uint32 minSeqLedgerGap;

// For the transaction to be valid, there must be a signature
// corresponding to every Signer in this array, even if the
// signature is not otherwise required by the sourceAccount or
// operations.
SignerKey extraSigners<2>;

};

Constructors

Link copied to clipboard
constructor(timeBounds: TimeBoundsXdr?, ledgerBounds: LedgerBoundsXdr?, minSeqNum: SequenceNumberXdr?, minSeqAge: DurationXdr, minSeqLedgerGap: Uint32Xdr, extraSigners: List<SignerKeyXdr>)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard

Transaction only valid for ledger numbers n such that minLedger <= n < maxLedger (if maxLedger == 0, then only minLedger is checked)

Link copied to clipboard

For the transaction to be valid, the current ledger time must be at least minSeqAge greater than sourceAccount's seqTime.

Link copied to clipboard

For the transaction to be valid, the current ledger number must be at least minSeqLedgerGap greater than sourceAccount's seqLedger.

Link copied to clipboard

If NULL, only valid when sourceAccount's sequence number is seqNum - 1. Otherwise, valid when sourceAccount's sequence number n satisfies minSeqNum <= n < tx.seqNum. Note that after execution the account's sequence number is always raised to tx.seqNum, and a transaction is not valid if tx.seqNum is too high to ensure replay protection.

Link copied to clipboard

Functions

Link copied to clipboard
fun encode(writer: XdrWriter)