fileledger

package
v2.2.4-gm Latest Latest
Warning

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

Go to latest
Published: Jan 10, 2022 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(directory string, metricsProvider metrics.Provider) (blockledger.Factory, error)

New creates a new ledger factory

Types

type FileLedger

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

FileLedger is a struct used to interact with a node's ledger

func NewFileLedger

func NewFileLedger(blockStore FileLedgerBlockStore) *FileLedger

NewFileLedger creates a new FileLedger for interaction with the ledger

func (*FileLedger) Append

func (fl *FileLedger) Append(block *cb.Block) error

Append a new block to the ledger

func (*FileLedger) Height

func (fl *FileLedger) Height() uint64

Height returns the number of blocks on the ledger

func (*FileLedger) Iterator

func (fl *FileLedger) Iterator(startPosition *ab.SeekPosition) (blockledger.Iterator, uint64)

Iterator returns an Iterator, as specified by an ab.SeekInfo message, and its starting block number

func (*FileLedger) RetrieveBlockByNumber

func (fl *FileLedger) RetrieveBlockByNumber(blockNumber uint64) (*cb.Block, error)

type FileLedgerBlockStore

type FileLedgerBlockStore interface {
	AddBlock(block *cb.Block) error
	GetBlockchainInfo() (*cb.BlockchainInfo, error)
	RetrieveBlocks(startBlockNumber uint64) (ledger.ResultsIterator, error)
	RetrieveBlockByNumber(blockNum uint64) (*cb.Block, error)
}

FileLedgerBlockStore defines the interface to interact with deliver when using a file ledger

Jump to

Keyboard shortcuts

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