forked from TrueCloudLab/frostfs-node
c25f5a86ae
Add optional parameters to the client call signature. Group parameters of a client call into struct to improve future codebase support. Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
35 lines
833 B
Go
35 lines
833 B
Go
package wrapper
|
|
|
|
import (
|
|
"github.com/nspcc-dev/neo-go/pkg/crypto/keys"
|
|
"github.com/nspcc-dev/neofs-node/pkg/morph/client"
|
|
"github.com/nspcc-dev/neofs-node/pkg/morph/client/netmap"
|
|
)
|
|
|
|
// UpdateIRPrm groups parameters of UpdateInnerRing
|
|
// invocation.
|
|
type UpdateIRPrm struct {
|
|
keys keys.PublicKeys
|
|
|
|
client.InvokePrmOptional
|
|
}
|
|
|
|
// SetKeys sets new inner ring keys.
|
|
func (u *UpdateIRPrm) SetKeys(keys keys.PublicKeys) {
|
|
u.keys = keys
|
|
}
|
|
|
|
// UpdateInnerRing updates inner ring keys.
|
|
func (w *Wrapper) UpdateInnerRing(prm UpdateIRPrm) error {
|
|
args := netmap.UpdateIRPrm{}
|
|
|
|
args.SetKeys(prm.keys)
|
|
args.InvokePrmOptional = prm.InvokePrmOptional
|
|
|
|
return w.client.UpdateInnerRing(args)
|
|
}
|
|
|
|
// GetInnerRingList return current IR list.
|
|
func (w *Wrapper) GetInnerRingList() (keys.PublicKeys, error) {
|
|
return w.client.InnerRingList()
|
|
}
|