broadcast

package
v0.0.0-...-99016a9 Latest Latest
Warning

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

Go to latest
Published: Mar 9, 2020 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ConfigUpdateProcessor

type ConfigUpdateProcessor interface {
	// Process takes in an envelope of type CONFIG_UPDATE and proceses it
	// to transform it either into another envelope type
	Process(envConfigUpdate *cb.Envelope) (*cb.Envelope, error)
}

ConfigUpdateProcessor is used to transform CONFIG_UPDATE transactions which are used to generate other envelope message types with preprocessing by the orderer

type Handler

type Handler interface {
	// Handle starts a service thread for a given gRPC connection and services the broadcast connection
	Handle(srv ab.AtomicBroadcast_BroadcastServer) error
}

Handler defines an interface which handles broadcasts

func NewHandlerImpl

func NewHandlerImpl(sm SupportManager) Handler

NewHandlerImpl constructs a new implementation of the Handler interface

type Support

type Support interface {
	// Enqueue accepts a message and returns true on acceptance, or false on shutdown
	Enqueue(env *cb.Envelope) bool

	// Filters returns the set of broadcast filters for this chain
	Filters() *filter.RuleSet
}

Support provides the backing resources needed to support broadcast on a chain

type SupportManager

type SupportManager interface {
	ConfigUpdateProcessor

	// GetChain gets the chain support for a given ChannelId
	GetChain(chainID string) (Support, bool)
}

SupportManager provides a way for the Handler to look up the Support for a chain

Jump to

Keyboard shortcuts

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