observer

package
v0.0.0-...-a2d2855 Latest Latest
Warning

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

Go to latest
Published: Sep 27, 2022 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateSignedDeliverNewestEnv

func CreateSignedDeliverNewestEnv(ch string, signer *basic.CryptoImpl) (*common.Envelope, error)

Types

type AddressedBlock

type AddressedBlock struct {
	*peer.FilteredBlock
	Address int // source peer's number
	Now     time.Duration
}

AddressedBlock describe the source of block

type BlockCollector

type BlockCollector struct {
	sync.Mutex
	// contains filtered or unexported fields
}

BlockCollector keeps track of committed blocks on multiple peers. This is used when a block is considered confirmed only when committed on a certain number of peers within network.

func NewBlockCollector

func NewBlockCollector(threshold int, totalP int,
	ctx context.Context,
	blockCh chan *AddressedBlock,
	finishCh chan struct{},
	totalTx int,
	printResult bool,
	logger *wlogging.WswLogger,
	once *sync.Once) (*BlockCollector, error)

NewBlockCollector creates a BlockCollector

func (*BlockCollector) Start

func (bc *BlockCollector) Start()

type CommitObserver

type CommitObserver struct {
	Now time.Time
	// contains filtered or unexported fields
}

func CreateCommitObserver

func CreateCommitObserver(
	channel string,
	node basic.Node,
	crypto *basic.CryptoImpl,
	logger *wlogging.WswLogger,
	n int,
	config basic.Config,
	errorCh chan error,
	finishCh chan struct{},
	once *sync.Once) (*CommitObserver, error)

func (*CommitObserver) GetTime

func (o *CommitObserver) GetTime() time.Time

func (*CommitObserver) Start

func (o *CommitObserver) Start()

type EndorseObserver

type EndorseObserver struct {
	Envs chan *basic.TracingEnvelope

	Now time.Time
	// contains filtered or unexported fields
}

func CreateEndorseObserver

func CreateEndorseObserver(Envs chan *basic.TracingEnvelope, N int, finishCh chan struct{}, once *sync.Once, logger *wlogging.WswLogger) *EndorseObserver

func (*EndorseObserver) GetTime

func (o *EndorseObserver) GetTime() time.Time

func (*EndorseObserver) Start

func (o *EndorseObserver) Start()

type Observer

type Observer struct {
	Address string
	// contains filtered or unexported fields
}

func CreateObserver

func CreateObserver(ctx context.Context, channel string, node basic.Node, crypto infra.Crypto, logger *wlogging.WswLogger) (*Observer, error)

func (*Observer) Start

func (o *Observer) Start(errorCh chan error, blockCh chan<- *AddressedBlock, now time.Time)

type ObserverFactory

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

func NewObserverFactory

func NewObserverFactory(config basic.Config,
	crypto infra.Crypto,
	blockCh chan *AddressedBlock,
	logger *wlogging.WswLogger,
	ctx context.Context,
	finishCh chan struct{},
	num, parallel int,
	envs chan *basic.TracingEnvelope,
	errorCh chan error) *ObserverFactory

func (*ObserverFactory) CreateCommitObserverWorkers

func (of *ObserverFactory) CreateCommitObserverWorkers() ([]infra.Worker, infra.ObserverWorker, error)

3

func (*ObserverFactory) CreateEndorsementObserverWorkers

func (of *ObserverFactory) CreateEndorsementObserverWorkers() ([]infra.Worker, infra.ObserverWorker, error)

4

func (*ObserverFactory) CreateFullProcessObserverWorkers

func (of *ObserverFactory) CreateFullProcessObserverWorkers() ([]infra.Worker, infra.ObserverWorker, error)

6

func (*ObserverFactory) CreateObserverWorkers

func (of *ObserverFactory) CreateObserverWorkers(mode int) ([]infra.Worker, infra.ObserverWorker, error)

type Observers

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

func CreateObservers

func CreateObservers(ctx context.Context, crypto infra.Crypto, errorCh chan error, blockCh chan *AddressedBlock, config basic.Config, logger *wlogging.WswLogger) (*Observers, error)

func (*Observers) GetTime

func (o *Observers) GetTime() time.Time

func (*Observers) Start

func (o *Observers) Start()

Jump to

Keyboard shortcuts

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