burrow: github.com/hyperledger/burrow/consensus/abci Index | Files

package abci

import "github.com/hyperledger/burrow/consensus/abci"


Package Files

app.go execute_tx.go peers_filter.go process.go


const (
    TendermintValidatorDelayInBlocks = 2
    BurrowValidatorDelayInBlocks     = 1

func DeliverTxFromCheckTx Uses

func DeliverTxFromCheckTx(ctr types.ResponseCheckTx) types.ResponseDeliverTx

func ExecuteTx Uses

func ExecuteTx(logHeader string, executor execution.Executor, txDecoder txs.Decoder, txBytes []byte) types.ResponseCheckTx

Attempt to execute a transaction using ABCI conventions and codes

func WithEvents Uses

func WithEvents(logger *logging.Logger, events []types.Event) *logging.Logger

type App Uses

type App struct {
    // contains filtered or unexported fields

func NewApp Uses

func NewApp(nodeInfo string, blockchain *bcm.Blockchain, validators Validators, checker execution.BatchExecutor,
    committer execution.BatchCommitter, txDecoder txs.Decoder, authorizedPeers AuthorizedPeers,
    panicFunc func(error), logger *logging.Logger) *App

func (*App) BeginBlock Uses

func (app *App) BeginBlock(block types.RequestBeginBlock) (respBeginBlock types.ResponseBeginBlock)

func (*App) CheckTx Uses

func (app *App) CheckTx(req types.RequestCheckTx) types.ResponseCheckTx

func (*App) Commit Uses

func (app *App) Commit() types.ResponseCommit

func (*App) DeliverTx Uses

func (app *App) DeliverTx(req types.RequestDeliverTx) types.ResponseDeliverTx

func (*App) EndBlock Uses

func (app *App) EndBlock(reqEndBlock types.RequestEndBlock) types.ResponseEndBlock

func (*App) Info Uses

func (app *App) Info(info types.RequestInfo) types.ResponseInfo

func (*App) InitChain Uses

func (app *App) InitChain(chain types.RequestInitChain) (respInitChain types.ResponseInitChain)

func (*App) Query Uses

func (app *App) Query(reqQuery types.RequestQuery) (respQuery types.ResponseQuery)

func (*App) SetMempoolLocker Uses

func (app *App) SetMempoolLocker(mempoolLocker sync.Locker)

Provide the Mempool lock. When provided we will attempt to acquire this lock in a goroutine during the Commit. We will keep the checker cache locked until we are able to acquire the mempool lock which signals the end of the commit and possible recheck on Tendermint's side.

func (*App) SetOption Uses

func (app *App) SetOption(option types.RequestSetOption) (respSetOption types.ResponseSetOption)

type AuthorizedPeers Uses

type AuthorizedPeers interface {
    NumPeers() int
    QueryPeerByID(id string) bool
    QueryPeerByAddress(id string) bool

AuthorizedPeers provides current authorized nodes id and/or addresses

type PeerLists Uses

type PeerLists struct {
    IDs       map[string]struct{}
    Addresses map[string]struct{}

func NewPeerLists Uses

func NewPeerLists() *PeerLists

func (PeerLists) NumPeers Uses

func (p PeerLists) NumPeers() int

func (PeerLists) QueryPeerByAddress Uses

func (p PeerLists) QueryPeerByAddress(id string) bool

func (PeerLists) QueryPeerByID Uses

func (p PeerLists) QueryPeerByID(id string) bool

type Process Uses

type Process struct {
    // contains filtered or unexported fields

func NewProcess Uses

func NewProcess(committer execution.BatchCommitter, blockchain *bcm.Blockchain, txDecoder txs.Decoder,
    commitInterval time.Duration, panicFunc func(error)) *Process

NewProcess returns a no-consensus ABCI process suitable for running a single node without Tendermint. The CheckTx function can be used to submit transactions which are processed according

func (*Process) CheckTx Uses

func (p *Process) CheckTx(tx tmTypes.Tx, cb func(*types.Response), txInfo mempool.TxInfo) error

func (*Process) Shutdown Uses

func (p *Process) Shutdown(ctx context.Context) (err error)

type Validators Uses

type Validators interface {

Package abci imports 22 packages (graph) and is imported by 8 packages. Updated 2020-03-10. Refresh now. Tools for package owners.