frostfs-node/pkg/services/object/head/util.go
Leonard Lyubich 05f3963975 [] service/object: Implement simplified object Head service
Implement Head service w/o linking object processing and restoration from
split-chain.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00

27 lines
445 B
Go

package headsvc
import (
"context"
"sync"
"github.com/nspcc-dev/neofs-node/pkg/core/object"
"github.com/nspcc-dev/neofs-node/pkg/services/object_manager/placement"
)
type onceHeaderWriter struct {
once *sync.Once
traverser *placement.Traverser
resp *Response
cancel context.CancelFunc
}
func (w *onceHeaderWriter) write(hdr *object.Object) {
w.once.Do(func() {
w.resp.hdr = hdr
w.traverser.SubmitSuccess()
w.cancel()
})
}