Documentation ¶
Index ¶
- func InitGossipService(peerIdentity []byte, metricsProvider metrics.Provider, endpoint string, ...) error
- func InitGossipServiceCustomDeliveryFactory(peerIdentity []byte, metricsProvider metrics.Provider, endpoint string, ...) error
- type ApplicationOrgs
- type Config
- type ConfigProcessor
- type DataStoreSupport
- type DeliveryServiceFactory
- type GossipService
- type OrdererAddressConfig
- 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, orgLeader bool, 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 ApplicationOrgs ¶
type ApplicationOrgs map[string]channelconfig.ApplicationOrg
ApplicationOrgs defines a mapping from ApplicationOrg by ID.
type Config ¶
type Config interface { // ChainID returns the chainID for this channel ChainID() string // OrdererOrgs returns the organizations of the orderers OrdererOrgs() []string // OrdererAddressesByOrgs returns a mapping from the organization ID // to the endpoints of the orderers OrdererAddressesByOrgs() map[string][]string // ApplicationOrgs returns a map of org ID to ApplicationOrgConfig ApplicationOrgs() ApplicationOrgs // 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, oac OrdererAddressConfig, 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, oac OrdererAddressConfig, support Support) // AddPayload appends message payload to for given chain AddPayload(chainID string, payload *gproto.Payload) error }
GossipService encapsulates gossip and state capabilities into single interface
func GetGossipService ¶
func GetGossipService() GossipService
GetGossipService returns an instance of gossip service
type OrdererAddressConfig ¶
type OrdererAddressConfig struct { Addresses []string AddressesByOrg map[string][]string Organizations []string AddressOverrides map[string]*comm.OrdererEndpoint }
OrdererAddressConfig defines the addresses of the ordering service nodes
type Support ¶
type Support struct { Validator txvalidator.Validator Committer committer.Committer Store privdata2.TransientStore Cs privdata.CollectionStore IdDeserializeFactory privdata2.IdentityDeserializerFactory CapabilityProvider privdata2.CapabilityProvider }
Support aggregates functionality of several interfaces required by gossip service