forked from TrueCloudLab/frostfs-node
eb1fba5182
After recent Netmap contract changes all read methods which return network map (either candidates or snapshots) encode node descriptors into same structure. Decode `netmap.Node` contract-side structure from the call results. Replace node state with the value from the `netmap.Node.State` field. Signed-off-by: Leonard Lyubich <ctulhurider@gmail.com>
20 lines
459 B
Go
20 lines
459 B
Go
package netmap
|
|
|
|
import (
|
|
"github.com/nspcc-dev/neofs-node/pkg/morph/client"
|
|
"github.com/nspcc-dev/neofs-sdk-go/netmap"
|
|
)
|
|
|
|
// GetNetMap calls "snapshot" method and decodes netmap.NetMap from the response.
|
|
func (c *Client) GetNetMap(diff uint64) (*netmap.NetMap, error) {
|
|
prm := client.TestInvokePrm{}
|
|
prm.SetMethod(snapshotMethod)
|
|
prm.SetArgs(diff)
|
|
|
|
res, err := c.client.TestInvoke(prm)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return decodeNetMap(res)
|
|
}
|