...

Package fileledger

import "github.com/hyperledger/fabric/common/ledger/blockledger/file"
Overview
Index

Overview ▾

func New

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

New creates a new ledger factory

type FileLedger

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

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

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

type FileLedgerBlockStore

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

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