1 Star 0 Fork 0

Hyperledger Fabric 国密 / fabric-sdk-go

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
balanced.go 1.69 KB
一键复制 编辑 原始数据 按行查看 历史
Jtyoui 提交于 2021-07-22 20:40 . 改造国密sdk
/*
Copyright SecureKey Technologies Inc. All Rights Reserved.
SPDX-License-Identifier: Apache-2.0
*/
package balanced
import (
"gitee.com/hyperledger-fabric-gm/fabric-sdk-go/pkg/common/logging"
"gitee.com/hyperledger-fabric-gm/fabric-sdk-go/pkg/common/options"
"gitee.com/hyperledger-fabric-gm/fabric-sdk-go/pkg/common/providers/context"
"gitee.com/hyperledger-fabric-gm/fabric-sdk-go/pkg/common/providers/fab"
"gitee.com/hyperledger-fabric-gm/fabric-sdk-go/pkg/fab/events/client/peerresolver"
"gitee.com/hyperledger-fabric-gm/fabric-sdk-go/pkg/fab/events/service"
)
var logger = logging.NewLogger("fabsdk/fab")
// PeerResolver is a peer resolver that chooses peers using the provided load balancer.
type PeerResolver struct {
*params
}
// NewResolver returns a new "balanced" peer resolver provider.
func NewResolver() peerresolver.Provider {
return func(ed service.Dispatcher, context context.Client, channelID string, opts ...options.Opt) peerresolver.Resolver {
return New(ed, context, channelID, opts...)
}
}
// New returns a new "balanced" peer resolver.
func New(dispatcher service.Dispatcher, context context.Client, channelID string, opts ...options.Opt) *PeerResolver {
params := defaultParams(context, channelID)
options.Apply(params, opts)
logger.Debugf("Creating new balanced peer resolver")
return &PeerResolver{
params: params,
}
}
// Resolve returns a peer usig the configured load balancer.
func (r *PeerResolver) Resolve(peers []fab.Peer) (fab.Peer, error) {
return r.loadBalancePolicy.Choose(peers)
}
// ShouldDisconnect always returns false (will not disconnect a connected peer)
func (r *PeerResolver) ShouldDisconnect(peers []fab.Peer, connectedPeer fab.Peer) bool {
return false
}
1
https://gitee.com/hyperledger-fabric-gm/fabric-sdk-go.git
git@gitee.com:hyperledger-fabric-gm/fabric-sdk-go.git
hyperledger-fabric-gm
fabric-sdk-go
fabric-sdk-go
3287af796e9e

搜索帮助