Documentation ¶
Index ¶
- Variables
- func CacheConfiguration() error
- func CreateChainFromBlock(cb *common.Block, sccp sysccprovider.SystemChaincodeProvider, ...) error
- func GetChannelConfig(cid string) channelconfig.Resources
- func GetChannelsInfo() []*pb.ChannelInfo
- func GetClientCertificate() (tls.Certificate, error)
- func GetCurrConfigBlock(cid string) *common.Block
- func GetLedger(cid string) ledger.PeerLedger
- func GetLocalIP() (string, error)
- func GetMSPIDs(cid string) []string
- func GetPeerEndpoint() (*pb.PeerEndpoint, error)
- func GetPolicyManager(cid string) policies.Manager
- func GetServerConfig() (comm.ServerConfig, error)
- func GetStableChannelConfig(cid string) channelconfig.Resources
- func InitChain(cid string)
- func Initialize(init func(string), sccp sysccprovider.SystemChaincodeProvider, ...)
- func MockCreateChain(cid string) error
- func MockInitialize()
- func MockSetMSPIDGetter(mspIDGetter func(string) []string)
- func NewChannelPolicyManagerGetter() policies.ChannelPolicyManagerGetter
- func NewConfigSupport() cc.Manager
- func NewDeliverEventsServer(mutualTLS bool, policyCheckerProvider PolicyCheckerProvider, ...) peer.DeliverServer
- func NewPeerServer(listenAddress string, serverConfig comm.ServerConfig) (*comm.GRPCServer, error)
- func SetCurrConfigBlock(block *common.Block, cid string) error
- type CollectionInfoShim
- type CollectionSupport
- type DeliverChainManager
- type Operations
- type PolicyCheckerProvider
- type Support
Constants ¶
This section is empty.
Variables ¶
var ConfigTxProcessors = customtx.Processors{ common.HeaderType_CONFIG: configTxProcessor, common.HeaderType_TOKEN_TRANSACTION: tokenTxProcessor, }
var TransientStoreFactory = &storeProvider{stores: make(map[string]transientstore.Store)}
Functions ¶
func CacheConfiguration ¶
func CacheConfiguration() error
CacheConfiguration computes and caches commonly-used constants and computed constants as package variables. Routines which were previously global have been embedded here to preserve the original abstraction.
func CreateChainFromBlock ¶
func CreateChainFromBlock( cb *common.Block, sccp sysccprovider.SystemChaincodeProvider, deployedCCInfoProvider ledger.DeployedChaincodeInfoProvider, legacyLifecycleValidation plugindispatcher.LifecycleResources, newLifecycleValidation plugindispatcher.CollectionAndLifecycleResources, ) error
CreateChainFromBlock creates a new chain from config block
func GetChannelConfig ¶
func GetChannelConfig(cid string) channelconfig.Resources
GetChannelConfig returns the channel configuration of the chain with channel ID. Note that this call returns nil if chain cid has not been created.
func GetChannelsInfo ¶
func GetChannelsInfo() []*pb.ChannelInfo
GetChannelsInfo returns an array with information about all channels for this peer
func GetClientCertificate ¶
func GetClientCertificate() (tls.Certificate, error)
GetClientCertificate returns the TLS certificate to use for gRPC client connections
func GetCurrConfigBlock ¶
GetCurrConfigBlock returns the cached config block of the specified chain. Note that this call returns nil if chain cid has not been created.
func GetLedger ¶
func GetLedger(cid string) ledger.PeerLedger
GetLedger returns the ledger of the chain with chain ID. Note that this call returns nil if chain cid has not been created.
func GetLocalIP ¶
GetLocalIP returns the non loopback local IP of the host
func GetPeerEndpoint ¶
func GetPeerEndpoint() (*pb.PeerEndpoint, error)
GetPeerEndpoint returns peerEndpoint from cached configuration
func GetPolicyManager ¶
GetPolicyManager returns the policy manager of the chain with chain ID. Note that this call returns nil if chain cid has not been created.
func GetServerConfig ¶
func GetServerConfig() (comm.ServerConfig, error)
GetServerConfig returns the gRPC server configuration for the peer
func GetStableChannelConfig ¶
func GetStableChannelConfig(cid string) channelconfig.Resources
GetStableChannelConfig returns the stable channel configuration of the chain with channel ID. Note that this call returns nil if chain cid has not been created.
func InitChain ¶
func InitChain(cid string)
InitChain takes care to initialize chain after peer joined, for example deploys system CCs
func Initialize ¶
func Initialize(init func(string), sccp sysccprovider.SystemChaincodeProvider, pm plugin.Mapper, pr *platforms.Registry, deployedCCInfoProvider ledger.DeployedChaincodeInfoProvider, membershipProvider ledger.MembershipInfoProvider, metricsProvider metrics.Provider, legacyLifecycleValidation plugindispatcher.LifecycleResources, newLifecycleValidation plugindispatcher.CollectionAndLifecycleResources)
Initialize sets up any chains that the peer has from the persistence. This function should be called at the start up when the ledger and gossip ready
func MockCreateChain ¶
MockCreateChain used for creating a ledger for a chain for tests without having to join
func MockSetMSPIDGetter ¶
func NewChannelPolicyManagerGetter ¶
func NewChannelPolicyManagerGetter() policies.ChannelPolicyManagerGetter
NewChannelPolicyManagerGetter returns a new instance of ChannelPolicyManagerGetter
func NewDeliverEventsServer ¶
func NewDeliverEventsServer(mutualTLS bool, policyCheckerProvider PolicyCheckerProvider, chainManager deliver.ChainManager, metricsProvider metrics.Provider) peer.DeliverServer
NewDeliverEventsServer creates a peer.Deliver server to deliver block and filtered block events
func NewPeerServer ¶
func NewPeerServer(listenAddress string, serverConfig comm.ServerConfig) (*comm.GRPCServer, error)
NewPeerServer creates an instance of comm.GRPCServer This server is used for peer communications
Types ¶
type CollectionInfoShim ¶
type CollectionInfoShim struct { plugindispatcher.CollectionAndLifecycleResources ChannelID string }
func (*CollectionInfoShim) CollectionValidationInfo ¶
func (cis *CollectionInfoShim) CollectionValidationInfo(chaincodeName, collectionName string, validationState validation.State) ([]byte, error, error)
type CollectionSupport ¶
type CollectionSupport struct { ledger.PeerLedger DeployedCCInfoProvider ledger.DeployedChaincodeInfoProvider }
TODO: Remove CollectionSupport and respective methonds on them. CollectionSupport is created per chain and is passed to the simple collection store and the gossip. As it is created per chain, there is no need to pass the channelID for both GetQueryExecutorForLedger() and GetIdentityDeserializer(). Note that the cid passed to GetQueryExecutorForLedger is never used. Instead, we can directly pass the ledger.PeerLedger and msp.IdentityDeserializer to the simpleCollectionStore and pass only the msp.IdentityDeserializer to the gossip in createChain() -- FAB-13037
func (*CollectionSupport) GetCollectionInfoProvider ¶
func (cs *CollectionSupport) GetCollectionInfoProvider() ledger.DeployedChaincodeInfoProvider
func (*CollectionSupport) GetIdentityDeserializer ¶
func (*CollectionSupport) GetIdentityDeserializer(chainID string) msp.IdentityDeserializer
func (*CollectionSupport) GetQueryExecutorForLedger ¶
func (cs *CollectionSupport) GetQueryExecutorForLedger(cid string) (ledger.QueryExecutor, error)
type DeliverChainManager ¶
type DeliverChainManager struct { }
DeliverChainManager provides access to a channel for performing deliver
type Operations ¶
type Operations interface { CreateChainFromBlock(cb *common.Block, sccp sysccprovider.SystemChaincodeProvider, deployedCCInfoProvider ledger.DeployedChaincodeInfoProvider, lr plugindispatcher.LifecycleResources, nr plugindispatcher.CollectionAndLifecycleResources) error GetChannelConfig(cid string) channelconfig.Resources GetChannelsInfo() []*pb.ChannelInfo GetStableChannelConfig(cid string) channelconfig.Resources GetCurrConfigBlock(cid string) *common.Block GetLedger(cid string) ledger.PeerLedger GetMSPIDs(cid string) []string GetPolicyManager(cid string) policies.Manager InitChain(cid string) Initialize(init func(string), sccp sysccprovider.SystemChaincodeProvider, pm plugin.Mapper, pr *platforms.Registry, deployedCCInfoProvider ledger.DeployedChaincodeInfoProvider, membershipProvider ledger.MembershipInfoProvider, metricsProvider metrics.Provider, lr plugindispatcher.LifecycleResources, nr plugindispatcher.CollectionAndLifecycleResources) }
Operations exposes an interface to the package level functions that operated on singletons in the package. This is a step towards moving from package level data for the peer to instance level data.
var Default Operations = &peerImpl{ createChainFromBlock: CreateChainFromBlock, getChannelConfig: GetChannelConfig, getChannelsInfo: GetChannelsInfo, getStableChannelConfig: GetStableChannelConfig, getCurrConfigBlock: GetCurrConfigBlock, getLedger: GetLedger, getMSPIDs: GetMSPIDs, getPolicyManager: GetPolicyManager, initChain: InitChain, initialize: Initialize, }
Default provides in implementation of the Peer interface that provides access to the package level state.
type PolicyCheckerProvider ¶
type PolicyCheckerProvider func(resourceName string) deliver.PolicyCheckerFunc
PolicyCheckerProvider provides the corresponding policy checker for a given resource name
type Support ¶
type Support interface { // GetApplicationConfig returns the configtxapplication.SharedConfig for the channel // and whether the Application config exists GetApplicationConfig(cid string) (channelconfig.Application, bool) }
Support gives access to peer resources and avoids calls to static methods