forked from TrueCloudLab/frostfs-node
[#285] services/object: Add X-Headers to client call options
Forward request X-headers to client calls during internal processing of Object operations on the node. Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
parent
0855dec9c2
commit
c69f867af1
1 changed files with 14 additions and 1 deletions
|
@ -3,6 +3,7 @@ package util
|
|||
import (
|
||||
"crypto/ecdsa"
|
||||
|
||||
"github.com/nspcc-dev/neofs-api-go/pkg"
|
||||
"github.com/nspcc-dev/neofs-api-go/pkg/client"
|
||||
"github.com/nspcc-dev/neofs-api-go/pkg/token"
|
||||
"github.com/nspcc-dev/neofs-api-go/v2/session"
|
||||
|
@ -109,11 +110,15 @@ func CommonPrmFromV2(req interface {
|
|||
}) *CommonPrm {
|
||||
meta := req.GetMetaHeader()
|
||||
|
||||
xHdrs := meta.GetXHeaders()
|
||||
|
||||
const staticOptNum = 3
|
||||
|
||||
prm := &CommonPrm{
|
||||
local: meta.GetTTL() <= 1, // FIXME: use constant
|
||||
token: nil,
|
||||
bearer: nil,
|
||||
callOpts: make([]client.CallOption, 0, 3),
|
||||
callOpts: make([]client.CallOption, 0, staticOptNum+len(xHdrs)),
|
||||
}
|
||||
|
||||
prm.callOpts = append(prm.callOpts, client.WithTTL(meta.GetTTL()-1))
|
||||
|
@ -128,5 +133,13 @@ func CommonPrmFromV2(req interface {
|
|||
prm.callOpts = append(prm.callOpts, client.WithBearer(prm.bearer))
|
||||
}
|
||||
|
||||
for i := range xHdrs {
|
||||
prm.callOpts = append(prm.callOpts,
|
||||
client.WithXHeader(
|
||||
pkg.NewXHeaderFromV2(xHdrs[i]),
|
||||
),
|
||||
)
|
||||
}
|
||||
|
||||
return prm
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue