Documentation

Index

Constants

View Source
const (
	TendermintValidatorDelayInBlocks = 2
	BurrowValidatorDelayInBlocks     = 1
)

Variables

This section is empty.

Functions

func ExecuteTx

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

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

    Types

    type App

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

    func NewApp

    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

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

    func (*App) CheckTx

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

    func (*App) Commit

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

    func (*App) DeliverTx

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

    func (*App) EndBlock

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

    func (*App) Info

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

    func (*App) InitChain

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

    func (*App) Query

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

    func (*App) SetMempoolLocker

    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

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

      type AuthorizedPeers

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

        AuthorizedPeers provides current authorized nodes id and/or addresses

        type PeerLists

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

        func NewPeerLists

        func NewPeerLists() *PeerLists

        func (PeerLists) NumPeers

        func (p PeerLists) NumPeers() int

        func (PeerLists) QueryPeerByAddress

        func (p PeerLists) QueryPeerByAddress(id string) bool

        func (PeerLists) QueryPeerByID

        func (p PeerLists) QueryPeerByID(id string) bool

        type Process

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

        func NewProcess

        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

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

          func (*Process) Shutdown

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

          type Validators

          type Validators interface {
          	validator.History
          }