[#242] put: Pass context to relay function

Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
This commit is contained in:
Dmitrii Stepanov 2023-04-12 11:02:25 +03:00 committed by fyrchik
parent 995db117d0
commit 200fc8b882
4 changed files with 12 additions and 10 deletions

View file

@ -23,7 +23,7 @@ type Streamer struct {
target transformer.ObjectTarget
relay func(client.NodeInfo, client.MultiAddressClient) error
relay func(context.Context, client.NodeInfo, client.MultiAddressClient) error
maxPayloadSz uint64 // network config
}
@ -197,9 +197,9 @@ func (p *Streamer) preparePrm(prm *PutInitPrm) error {
}
func (p *Streamer) newCommonTarget(prm *PutInitPrm) transformer.ObjectTarget {
var relay func(nodeDesc) error
var relay func(context.Context, nodeDesc) error
if p.relay != nil {
relay = func(node nodeDesc) error {
relay = func(ctx context.Context, node nodeDesc) error {
var info client.NodeInfo
client.NodeInfoFromNetmapElement(&info, node.info)
@ -209,7 +209,7 @@ func (p *Streamer) newCommonTarget(prm *PutInitPrm) transformer.ObjectTarget {
return fmt.Errorf("could not create SDK client %s: %w", info.AddressGroup(), err)
}
return p.relay(info, c)
return p.relay(ctx, info, c)
}
}