[#170] oid, cid: Refactor and document package functionality

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
This commit is contained in:
Pavel Karpy 2022-04-11 19:25:14 +03:00 committed by LeL
parent 24d6c2221f
commit f7172adf18
49 changed files with 831 additions and 439 deletions

View file

@ -1,6 +1,7 @@
package session
import (
"github.com/nspcc-dev/neofs-api-go/v2/refs"
"github.com/nspcc-dev/neofs-api-go/v2/session"
cid "github.com/nspcc-dev/neofs-sdk-go/container/id"
)
@ -43,8 +44,17 @@ func (x *ContainerContext) ToV2() *session.ContainerSessionContext {
func (x *ContainerContext) ApplyTo(id *cid.ID) {
v2 := (*session.ContainerSessionContext)(x)
var cidV2 *refs.ContainerID
if id != nil {
var c refs.ContainerID
id.WriteToV2(&c)
cidV2 = &c
}
v2.SetWildcard(id == nil)
v2.SetContainerID(id.ToV2())
v2.SetContainerID(cidV2)
}
// ApplyToAllContainers is a helper function that conveniently
@ -65,7 +75,15 @@ func (x *ContainerContext) Container() *cid.ID {
return nil
}
return cid.NewFromV2(v2.ContainerID())
cidV2 := v2.ContainerID()
if cidV2 == nil {
return nil
}
var cID cid.ID
_ = cID.ReadFromV2(*cidV2)
return &cID
}
func (x *ContainerContext) forVerb(v session.ContainerSessionVerb) {