forked from TrueCloudLab/frostfs-node
[#199] putsvc: Refactor put object
Resolve containedctx linter for streamer and remote target Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
This commit is contained in:
parent
cecea8053a
commit
27bdddc48f
24 changed files with 171 additions and 125 deletions
|
@ -37,9 +37,9 @@ var ErrAbortStream = errors.New("abort message stream")
|
|||
|
||||
type ResponseConstructor func() ResponseMessage
|
||||
|
||||
type RequestMessageWriter func(any) error
|
||||
type RequestMessageWriter func(context.Context, any) error
|
||||
|
||||
type ClientStreamCloser func() (ResponseMessage, error)
|
||||
type ClientStreamCloser func(context.Context) (ResponseMessage, error)
|
||||
|
||||
type RequestMessageStreamer struct {
|
||||
key *ecdsa.PrivateKey
|
||||
|
@ -61,7 +61,7 @@ func NewUnarySignService(key *ecdsa.PrivateKey) *SignService {
|
|||
}
|
||||
}
|
||||
|
||||
func (s *RequestMessageStreamer) Send(req any) error {
|
||||
func (s *RequestMessageStreamer) Send(ctx context.Context, req any) error {
|
||||
// req argument should be strengthen with type RequestMessage
|
||||
s.statusSupported = isStatusSupported(req.(RequestMessage)) // panic is OK here for now
|
||||
|
||||
|
@ -71,7 +71,7 @@ func (s *RequestMessageStreamer) Send(req any) error {
|
|||
if err = signature.VerifyServiceMessage(req); err != nil {
|
||||
err = fmt.Errorf("could not verify request: %w", err)
|
||||
} else {
|
||||
err = s.send(req)
|
||||
err = s.send(ctx, req)
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
|
@ -87,7 +87,7 @@ func (s *RequestMessageStreamer) Send(req any) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
func (s *RequestMessageStreamer) CloseAndRecv() (ResponseMessage, error) {
|
||||
func (s *RequestMessageStreamer) CloseAndRecv(ctx context.Context) (ResponseMessage, error) {
|
||||
var (
|
||||
resp ResponseMessage
|
||||
err error
|
||||
|
@ -96,7 +96,7 @@ func (s *RequestMessageStreamer) CloseAndRecv() (ResponseMessage, error) {
|
|||
if s.sendErr != nil {
|
||||
err = s.sendErr
|
||||
} else {
|
||||
resp, err = s.close()
|
||||
resp, err = s.close(ctx)
|
||||
if err != nil {
|
||||
err = fmt.Errorf("could not close stream and receive response: %w", err)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue