Versions in this module Expand all Collapse all v0 v0.0.1 Nov 25, 2022 Changes in this version + var ErrBadSequence = &FailedTransactionError + var ErrCanceled = errors.New("canceled") + var ErrNoAccount = &FailedTransactionError + var ErrNoResults = errors.New("No result found") + var ErrTimeout = errors.New("timeout") + type FailedTransactionError struct + ResultXDR string + func (err *FailedTransactionError) Error() string + func (fte *FailedTransactionError) OperationResultCodes() (result []string, err error) + func (fte *FailedTransactionError) Result() (result xdr.TransactionResult, err error) + func (fte *FailedTransactionError) TransactionResultCodes(transactionHash string) (result ResultCodes, err error) + type HorizonDB interface + AllTransactionsByHashesSinceLedger func(ctx context.Context, hashes []string, sinceLedgerSeq uint32) ([]history.Transaction, error) + BeginTx func(*sql.TxOptions) error + GetLatestHistoryLedger func(ctx context.Context) (uint32, error) + GetSequenceNumbers func(ctx context.Context, addresses []string) (map[string]uint64, error) + NoRows func(error) bool + PreFilteredTransactionByHash func(ctx context.Context, dest interface{}, hash string) error + Rollback func() error + TransactionByHash func(ctx context.Context, dest interface{}, hash string) error + type Listener chan<- Result + type OpenSubmissionList interface + Add func(context.Context, string, Listener) error + Clean func(context.Context, time.Duration) (int, error) + Finish func(context.Context, string, Result) error + Pending func(context.Context) []string + func NewDefaultSubmissionList() OpenSubmissionList + type Result struct + Err error + Transaction history.Transaction + type ResultCodes struct + Code string + InnerCode string + type SubmissionResult struct + Duration time.Duration + Err error + func (s SubmissionResult) IsBadSeq() (bool, error) + type Submitter interface + Submit func(context.Context, string) SubmissionResult + func NewDefaultSubmitter(h *http.Client, url string) Submitter + type System struct + DB func(context.Context) HorizonDB + Log *log.Entry + Metrics struct{ ... } + Pending OpenSubmissionList + SubmissionQueue *sequence.Manager + SubmissionTimeout time.Duration + Submitter Submitter + func (sys *System) Init() + func (sys *System) RegisterMetrics(registry *prometheus.Registry) + func (sys *System) Submit(ctx context.Context, rawTx string, envelope xdr.TransactionEnvelope, ...) (resultReadCh <-chan Result) + func (sys *System) Tick(ctx context.Context)