Documentation ¶
Index ¶
- func InitGossipService(peerIdentity []byte, metricsProvider metrics.Provider, endpoint string, ...) error
- func InitGossipServiceCustomDeliveryFactory(peerIdentity []byte, metricsProvider metrics.Provider, endpoint string, ...) error
- type Config
- type ConfigProcessor
- type DataStoreSupport
- type DeliveryServiceFactory
- type GossipService
- type Support
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func InitGossipService ¶
func InitGossipService(peerIdentity []byte, metricsProvider metrics.Provider, endpoint string, s *grpc.Server, certs *gossipCommon.TLSCertificates, mcs api.MessageCryptoService, secAdv api.SecurityAdvisor, secureDialOpts api.PeerSecureDialOpts, bootPeers ...string) error
InitGossipService initialize gossip service
func InitGossipServiceCustomDeliveryFactory ¶
func InitGossipServiceCustomDeliveryFactory(peerIdentity []byte, metricsProvider metrics.Provider, endpoint string, s *grpc.Server, certs *gossipCommon.TLSCertificates, factory DeliveryServiceFactory, mcs api.MessageCryptoService, secAdv api.SecurityAdvisor, secureDialOpts api.PeerSecureDialOpts, bootPeers ...string) error
InitGossipServiceCustomDeliveryFactory initialize gossip service with customize delivery factory implementation, might be useful for testing and mocking purposes
Types ¶
type Config ¶
type Config interface { // ChainID returns the chainID for this channel ChainID() string // Organizations returns a map of org ID to ApplicationOrgConfig Organizations() map[string]channelconfig.ApplicationOrg // Sequence should return the sequence number of the current configuration Sequence() uint64 // OrdererAddresses returns the list of valid orderer addresses to connect to to invoke Broadcast/Deliver OrdererAddresses() []string }
Config enumerates the configuration methods required by gossip
type ConfigProcessor ¶
type ConfigProcessor interface { // ProcessConfig should be invoked whenever a channel's configuration is initialized or updated ProcessConfigUpdate(config Config) }
ConfigProcessor receives config updates
type DataStoreSupport ¶
type DataStoreSupport struct { committer.Committer privdata2.TransientStore }
DataStoreSupport aggregates interfaces capable of handling either incoming blocks or private data
type DeliveryServiceFactory ¶
type DeliveryServiceFactory interface { // Returns an instance of delivery client Service(g GossipService, endpoints []string, msc api.MessageCryptoService) (deliverclient.DeliverService, error) }
DeliveryServiceFactory factory to create and initialize delivery service instance
type GossipService ¶
type GossipService interface { gossip.Gossip // DistributePrivateData distributes private data to the peers in the collections // according to policies induced by the PolicyStore and PolicyParser DistributePrivateData(chainID string, txID string, privateData *transientstore.TxPvtReadWriteSetWithConfigInfo, blkHt uint64) error // NewConfigEventer creates a ConfigProcessor which the channelconfig.BundleSource can ultimately route config updates to NewConfigEventer() ConfigProcessor // InitializeChannel allocates the state provider and should be invoked once per channel per execution InitializeChannel(chainID string, endpoints []string, support Support) // AddPayload appends message payload to for given chain AddPayload(chainID string, payload *cached.GossipPayload) error }
GossipService encapsulates gossip and state capabilities into single interface
func GetGossipService ¶
func GetGossipService() GossipService
GetGossipService returns an instance of gossip service
type Support ¶
type Support struct { Validator txvalidator.Validator Committer committer.Committer Store privdata2.TransientStore Cs privdata.CollectionStore IdDeserializeFactory privdata2.IdentityDeserializerFactory }
Support aggregates functionality of several interfaces required by gossip service