代码拉取完成,页面将自动刷新
/*
Copyright SecureKey Technologies Inc. All Rights Reserved.
SPDX-License-Identifier: Apache-2.0
*/
package fabricselection
import (
"time"
"gitee.com/hyperledger-fabric-gm/fabric-sdk-go/pkg/common/errors/retry"
coptions "gitee.com/hyperledger-fabric-gm/fabric-sdk-go/pkg/common/options"
"gitee.com/hyperledger-fabric-gm/fabric-sdk-go/pkg/common/providers/fab"
)
type params struct {
refreshInterval time.Duration
responseTimeout time.Duration
retryOpts retry.Opts
errHandler fab.ErrorHandler
}
// WithRefreshInterval sets the interval in which the
// peer cache is refreshed
func WithRefreshInterval(value time.Duration) coptions.Opt {
return func(p coptions.Params) {
logger.Debug("Checking refreshIntervalSetter")
if setter, ok := p.(refreshIntervalSetter); ok {
setter.SetSelectionRefreshInterval(value)
}
}
}
// WithResponseTimeout sets the Discover service response timeout
func WithResponseTimeout(value time.Duration) coptions.Opt {
return func(p coptions.Params) {
logger.Debug("Checking responseTimeoutSetter")
if setter, ok := p.(responseTimeoutSetter); ok {
setter.SetSelectionResponseTimeout(value)
}
}
}
// WithRetryOpts sets retry options for retries on transient errors
// from the Discovery Server
func WithRetryOpts(value retry.Opts) coptions.Opt {
return func(p coptions.Params) {
logger.Debug("Checking retryOptsSetter")
if setter, ok := p.(retryOptsSetter); ok {
setter.SetSelectionRetryOpts(value)
}
}
}
// WithErrorHandler sets the error handler
func WithErrorHandler(value fab.ErrorHandler) coptions.Opt {
return func(p coptions.Params) {
logger.Debug("Checking errHandlerSetter")
if setter, ok := p.(errHandlerSetter); ok {
setter.SetErrorHandler(value)
}
}
}
type refreshIntervalSetter interface {
SetSelectionRefreshInterval(value time.Duration)
}
type responseTimeoutSetter interface {
SetSelectionResponseTimeout(value time.Duration)
}
type retryOptsSetter interface {
SetSelectionRetryOpts(value retry.Opts)
}
type errHandlerSetter interface {
SetErrorHandler(value fab.ErrorHandler)
}
func (o *params) SetSelectionRefreshInterval(value time.Duration) {
logger.Debugf("RefreshInterval: %s", value)
o.refreshInterval = value
}
func (o *params) SetSelectionResponseTimeout(value time.Duration) {
logger.Debugf("ResponseTimeout: %s", value)
o.responseTimeout = value
}
func (o *params) SetSelectionRetryOpts(value retry.Opts) {
logger.Debugf("RetryOpts: %#v", value)
o.retryOpts = value
}
func (o *params) SetErrorHandler(value fab.ErrorHandler) {
logger.Debugf("ErrorHandler: %+v", value)
o.errHandler = value
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。