forked from TrueCloudLab/frostfs-api-go
[#180] sdk/client: Implement methods that attach tokens to Client
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
parent
805ad54f41
commit
b2ba0eef07
3 changed files with 23 additions and 0 deletions
|
@ -5,6 +5,7 @@ import (
|
||||||
"errors"
|
"errors"
|
||||||
|
|
||||||
"github.com/nspcc-dev/neofs-api-go/pkg"
|
"github.com/nspcc-dev/neofs-api-go/pkg"
|
||||||
|
"github.com/nspcc-dev/neofs-api-go/pkg/token"
|
||||||
)
|
)
|
||||||
|
|
||||||
type (
|
type (
|
||||||
|
@ -13,6 +14,10 @@ type (
|
||||||
remoteNode TransportInfo
|
remoteNode TransportInfo
|
||||||
|
|
||||||
opts *clientOptions
|
opts *clientOptions
|
||||||
|
|
||||||
|
sessionToken *token.SessionToken
|
||||||
|
|
||||||
|
bearerToken *token.BearerToken
|
||||||
}
|
}
|
||||||
|
|
||||||
TransportProtocol uint32
|
TransportProtocol uint32
|
||||||
|
|
|
@ -62,6 +62,8 @@ func (c Client) defaultCallOptions() callOptions {
|
||||||
return callOptions{
|
return callOptions{
|
||||||
ttl: 2,
|
ttl: 2,
|
||||||
version: pkg.SDKVersion(),
|
version: pkg.SDKVersion(),
|
||||||
|
session: c.sessionToken,
|
||||||
|
bearer: c.bearerToken,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -110,3 +110,19 @@ func v2SessionClientFromOptions(opts *clientOptions) (cli *v2session.Client, err
|
||||||
|
|
||||||
return cli, nil
|
return cli, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// AttachSessionToken attaches session token to client.
|
||||||
|
//
|
||||||
|
// Provided token is attached to all requests without WithSession option.
|
||||||
|
// Use WithSession(nil) option in order to send request without session token.
|
||||||
|
func (c *Client) AttachSessionToken(token *token.SessionToken) {
|
||||||
|
c.sessionToken = token
|
||||||
|
}
|
||||||
|
|
||||||
|
// AttachBearerToken attaches bearer token to client.
|
||||||
|
//
|
||||||
|
// Provided bearer is attached to all requests without WithBearer option.
|
||||||
|
// Use WithBearer(nil) option in order to send request without bearer token.
|
||||||
|
func (c *Client) AttachBearerToken(token *token.BearerToken) {
|
||||||
|
c.bearerToken = token
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue