[#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
|
@ -75,11 +75,11 @@ func (m MetricCollector) Get(req *object.GetRequest, stream GetObjectStream) (er
|
|||
return
|
||||
}
|
||||
|
||||
func (m MetricCollector) Put(ctx context.Context) (PutObjectStream, error) {
|
||||
func (m MetricCollector) Put() (PutObjectStream, error) {
|
||||
if m.enabled {
|
||||
t := time.Now()
|
||||
|
||||
stream, err := m.next.Put(ctx)
|
||||
stream, err := m.next.Put()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -90,7 +90,7 @@ func (m MetricCollector) Put(ctx context.Context) (PutObjectStream, error) {
|
|||
start: t,
|
||||
}, nil
|
||||
}
|
||||
return m.next.Put(ctx)
|
||||
return m.next.Put()
|
||||
}
|
||||
|
||||
func (m MetricCollector) Head(ctx context.Context, request *object.HeadRequest) (*object.HeadResponse, error) {
|
||||
|
@ -179,17 +179,17 @@ func (s getStreamMetric) Send(resp *object.GetResponse) error {
|
|||
return s.stream.Send(resp)
|
||||
}
|
||||
|
||||
func (s putStreamMetric) Send(req *object.PutRequest) error {
|
||||
func (s putStreamMetric) Send(ctx context.Context, req *object.PutRequest) error {
|
||||
chunk, ok := req.GetBody().GetObjectPart().(*object.PutObjectPartChunk)
|
||||
if ok {
|
||||
s.metrics.AddPutPayload(len(chunk.GetChunk()))
|
||||
}
|
||||
|
||||
return s.stream.Send(req)
|
||||
return s.stream.Send(ctx, req)
|
||||
}
|
||||
|
||||
func (s putStreamMetric) CloseAndRecv() (*object.PutResponse, error) {
|
||||
res, err := s.stream.CloseAndRecv()
|
||||
func (s putStreamMetric) CloseAndRecv(ctx context.Context) (*object.PutResponse, error) {
|
||||
res, err := s.stream.CloseAndRecv(ctx)
|
||||
|
||||
s.metrics.IncPutReqCounter(err == nil)
|
||||
s.metrics.AddPutReqDuration(time.Since(s.start))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue