forked from TrueCloudLab/frostfs-node
[#1170] pkg/morph: Add inactive mode callback
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
This commit is contained in:
parent
424cc6d495
commit
2427593da6
2 changed files with 25 additions and 3 deletions
|
@ -19,6 +19,10 @@ import (
|
|||
// Option is a client configuration change function.
|
||||
type Option func(*cfg)
|
||||
|
||||
// Callback is a function that is going to be called
|
||||
// on certain Client's state.
|
||||
type Callback func()
|
||||
|
||||
// groups the configurations with default values.
|
||||
type cfg struct {
|
||||
ctx context.Context // neo-go client context
|
||||
|
@ -34,6 +38,8 @@ type cfg struct {
|
|||
extraEndpoints []string
|
||||
|
||||
singleCli *client.WSClient // neo-go client for single client mode
|
||||
|
||||
inactiveModeCb Callback
|
||||
}
|
||||
|
||||
const (
|
||||
|
@ -217,3 +223,13 @@ func WithSingleClient(cli *client.WSClient) Option {
|
|||
c.singleCli = cli
|
||||
}
|
||||
}
|
||||
|
||||
// WithConnLostCallback return a client constructor option
|
||||
// that specifies a callback that is called when Client
|
||||
// unsuccessfully tried to connect to all the specified
|
||||
// endpoints.
|
||||
func WithConnLostCallback(cb Callback) Option {
|
||||
return func(c *cfg) {
|
||||
c.inactiveModeCb = cb
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue