frostfs-node/pkg/network/transport/object/grpc/range.go
Evgenii Stratonikov 050a4bb2b0 [#1115] *: link TODOs to corresponding issues
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-11 12:58:59 +03:00

32 lines
852 B
Go

package object
import (
"github.com/nspcc-dev/neofs-api-go/v2/object"
objectGRPC "github.com/nspcc-dev/neofs-api-go/v2/object/grpc"
)
type getRangeStreamerV2 struct {
objectGRPC.ObjectService_GetRangeServer
}
func (s *getRangeStreamerV2) Send(resp *object.GetRangeResponse) error {
return s.ObjectService_GetRangeServer.Send(
resp.ToGRPCMessage().(*objectGRPC.GetRangeResponse),
)
}
// GetRange converts gRPC GetRangeRequest message and server-side stream and overtakes its data
// to gRPC stream.
func (s *Server) GetRange(req *objectGRPC.GetRangeRequest, gStream objectGRPC.ObjectService_GetRangeServer) error {
getRngReq := new(object.GetRangeRequest)
if err := getRngReq.FromGRPCMessage(req); err != nil {
return err
}
return s.srv.GetRange(
getRngReq,
&getRangeStreamerV2{
ObjectService_GetRangeServer: gStream,
},
)
}