tx

package
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 25, 2021 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BroadcastTx

func BroadcastTx(ctx context.CLIContext, txf Factory, msgs ...sdk.Msg) error

BroadcastTx attempts to generate, sign and broadcast a transaction with the given set of messages. It will also simulate gas requirements if necessary. It will return an error upon failure.

func BuildSimTx

func BuildSimTx(txf Factory, msgs ...sdk.Msg) ([]byte, error)

BuildSimTx creates an unsigned tx with an empty single signature and returns the encoded transaction or an error if the unsigned transaction cannot be built.

func BuildUnsignedTx

func BuildUnsignedTx(txf Factory, msgs ...sdk.Msg) (context.TxBuilder, error)

BuildUnsignedTx builds a transaction to be signed given a set of messages. The transaction is initially created via the provided factory's generator. Once created, the fee, memo, and messages are set.

func CalculateGas

func CalculateGas(
	queryFunc func(string, []byte) ([]byte, int64, error), txf Factory, msgs ...sdk.Msg,
) (sdk.SimulationResponse, uint64, error)

CalculateGas simulates the execution of a transaction and returns the simulation response obtained by the query and the adjusted gas amount.

func GenerateOrBroadcastTx

func GenerateOrBroadcastTx(ctx context.CLIContext, msgs ...sdk.Msg) error

GenerateOrBroadcastTx will either generate and print and unsigned transaction or sign it and broadcast it returning an error upon failure.

func GenerateOrBroadcastTxWithFactory

func GenerateOrBroadcastTxWithFactory(ctx context.CLIContext, txf Factory, msgs ...sdk.Msg) error

GenerateOrBroadcastTxWithFactory will either generate and print and unsigned transaction or sign it and broadcast it returning an error upon failure.

func GenerateTx

func GenerateTx(ctx context.CLIContext, txf Factory, msgs ...sdk.Msg) error

GenerateTx will generate an unsigned transaction and print it to the writer specified by ctx.Output. If simulation was requested, the gas will be simulated and also printed to the same writer before the transaction is printed.

func Sign

func Sign(txf Factory, name, passphrase string, tx context.TxBuilder) ([]byte, error)

Sign signs a given tx with the provided name and passphrase. If the Factory's Keybase is not set, a new one will be created based on the client's backend. The bytes signed over are canconical. The resulting signature will be set on the transaction. Finally, the marshaled transaction is returned. An error is returned upon failure.

Note, It is assumed the Factory has the necessary fields set that are required by the CanonicalSignBytes call.

func WriteGeneratedTxResponse

func WriteGeneratedTxResponse(
	ctx context.CLIContext, w http.ResponseWriter, br rest.BaseReq, msgs ...sdk.Msg,
)

WriteGeneratedTxResponse writes a generated unsigned transaction to the provided http.ResponseWriter. It will simulate gas costs if requested by the BaseReq. Upon any error, the error will be written to the http.ResponseWriter.

Types

type Factory

type Factory struct {
	// contains filtered or unexported fields
}

Factory defines a client transaction factory that facilitates generating and signing an application-specific transaction.

func NewFactoryFromCLI

func NewFactoryFromCLI(input io.Reader) Factory

func PrepareFactory

func PrepareFactory(ctx context.CLIContext, txf Factory) (Factory, error)

PrepareFactory ensures the account defined by ctx.GetFromAddress() exists and if the account number and/or the account sequence number are zero (not set), they will be queried for and set on the provided Factory. A new Factory with the updated fields will be returned.

func (Factory) AccountNumber

func (f Factory) AccountNumber() uint64

func (Factory) AccountRetriever

func (f Factory) AccountRetriever() context.AccountRetriever

func (Factory) ChainID

func (f Factory) ChainID() string

func (Factory) Fees

func (f Factory) Fees() sdk.Coins

func (Factory) Gas

func (f Factory) Gas() uint64

func (Factory) GasAdjustment

func (f Factory) GasAdjustment() float64

func (Factory) GasPrices

func (f Factory) GasPrices() sdk.DecCoins

func (Factory) Keybase

func (f Factory) Keybase() keyring.Keyring

func (Factory) Memo

func (f Factory) Memo() string

func (Factory) Sequence

func (f Factory) Sequence() uint64

func (Factory) SimulateAndExecute

func (f Factory) SimulateAndExecute() bool

SimulateAndExecute returns the option to simulate and then execute the transaction using the gas from the simulation results

func (Factory) WithAccountNumber

func (f Factory) WithAccountNumber(accnum uint64) Factory

WithAccountNumber returns a copy of the Factory with an updated account number.

func (Factory) WithAccountRetriever

func (f Factory) WithAccountRetriever(ar context.AccountRetriever) Factory

WithAccountRetriever returns a copy of the Factory with an updated AccountRetriever.

func (Factory) WithChainID

func (f Factory) WithChainID(chainID string) Factory

WithChainID returns a copy of the Factory with an updated chainID.

func (Factory) WithFees

func (f Factory) WithFees(fees string) Factory

WithFees returns a copy of the Factory with an updated fee.

func (Factory) WithGas

func (f Factory) WithGas(gas uint64) Factory

WithGas returns a copy of the Factory with an updated gas value.

func (Factory) WithGasAdjustment

func (f Factory) WithGasAdjustment(gasAdj float64) Factory

WithGasAdjustment returns a copy of the Factory with an updated gas adjustment.

func (Factory) WithGasPrices

func (f Factory) WithGasPrices(gasPrices string) Factory

WithGasPrices returns a copy of the Factory with updated gas prices.

func (Factory) WithKeybase

func (f Factory) WithKeybase(keybase keyring.Keyring) Factory

WithKeybase returns a copy of the Factory with updated Keybase.

func (Factory) WithMemo

func (f Factory) WithMemo(memo string) Factory

WithMemo returns a copy of the Factory with an updated memo.

func (Factory) WithSequence

func (f Factory) WithSequence(sequence uint64) Factory

WithSequence returns a copy of the Factory with an updated sequence number.

func (Factory) WithSimulateAndExecute

func (f Factory) WithSimulateAndExecute(sim bool) Factory

WithSimulateAndExecute returns a copy of the Factory with an updated gas simulation value.

func (Factory) WithTxGenerator

func (f Factory) WithTxGenerator(g context.TxGenerator) Factory

WithTxGenerator returns a copy of the Factory with an updated TxGenerator.

type GasEstimateResponse

type GasEstimateResponse struct {
	GasEstimate uint64 `json:"gas_estimate" yaml:"gas_estimate"`
}

GasEstimateResponse defines a response definition for tx gas estimation.

func (GasEstimateResponse) String

func (gr GasEstimateResponse) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL