forked from TrueCloudLab/frostfs-node
[#1454] Upgrade NeoFS SDK Go module with new IDs
Core changes: * avoid package-colliding variable naming * avoid using pointers to IDs where unnecessary * avoid using `idSDK` import alias pattern * use `EncodeToString` for protocol string calculation and `String` for printing Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
parent
cc6209e8a0
commit
1c30414a6c
218 changed files with 2095 additions and 2521 deletions
|
@ -12,7 +12,6 @@ import (
|
|||
cid "github.com/nspcc-dev/neofs-sdk-go/container/id"
|
||||
neofsecdsa "github.com/nspcc-dev/neofs-sdk-go/crypto/ecdsa"
|
||||
"github.com/nspcc-dev/neofs-sdk-go/object"
|
||||
addressSDK "github.com/nspcc-dev/neofs-sdk-go/object/address"
|
||||
oid "github.com/nspcc-dev/neofs-sdk-go/object/id"
|
||||
"github.com/nspcc-dev/neofs-sdk-go/storagegroup"
|
||||
"github.com/nspcc-dev/neofs-sdk-go/user"
|
||||
|
@ -40,7 +39,7 @@ type DeleteHandler interface {
|
|||
//
|
||||
// Returns apistatus.LockNonRegularObject if at least one object
|
||||
// is locked.
|
||||
DeleteObjects(*addressSDK.Address, ...*addressSDK.Address) error
|
||||
DeleteObjects(oid.Address, ...oid.Address) error
|
||||
}
|
||||
|
||||
// Locker is an object lock storage interface.
|
||||
|
@ -100,6 +99,10 @@ func (v *FormatValidator) Validate(obj *object.Object, unprepared bool) error {
|
|||
return errNilCID
|
||||
}
|
||||
|
||||
if err := v.checkOwner(obj); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := v.checkAttributes(obj); err != nil {
|
||||
return fmt.Errorf("invalid attributes: %w", err)
|
||||
}
|
||||
|
@ -149,7 +152,7 @@ func (v *FormatValidator) validateSignatureKey(obj *object.Object) error {
|
|||
token := obj.SessionToken()
|
||||
|
||||
if token == nil || !token.AssertAuthKey(&key) {
|
||||
return v.checkOwnerKey(obj.OwnerID(), key)
|
||||
return v.checkOwnerKey(*obj.OwnerID(), key)
|
||||
}
|
||||
|
||||
// FIXME: #1159 perform token verification
|
||||
|
@ -157,7 +160,7 @@ func (v *FormatValidator) validateSignatureKey(obj *object.Object) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
func (v *FormatValidator) checkOwnerKey(id *user.ID, key neofsecdsa.PublicKey) error {
|
||||
func (v *FormatValidator) checkOwnerKey(id user.ID, key neofsecdsa.PublicKey) error {
|
||||
var id2 user.ID
|
||||
user.IDFromKey(&id2, (ecdsa.PublicKey)(key))
|
||||
|
||||
|
@ -201,14 +204,11 @@ func (v *FormatValidator) ValidateContent(o *object.Object) error {
|
|||
}
|
||||
|
||||
idList := tombstone.Members()
|
||||
addrList := make([]*addressSDK.Address, 0, len(idList))
|
||||
addrList := make([]oid.Address, len(idList))
|
||||
|
||||
for i := range idList {
|
||||
a := addressSDK.NewAddress()
|
||||
a.SetContainerID(cnr)
|
||||
a.SetObjectID(idList[i])
|
||||
|
||||
addrList = append(addrList, a)
|
||||
addrList[i].SetContainer(cnr)
|
||||
addrList[i].SetObject(idList[i])
|
||||
}
|
||||
|
||||
if v.deleteHandler != nil {
|
||||
|
|
|
@ -11,7 +11,7 @@ import (
|
|||
objectV2 "github.com/nspcc-dev/neofs-api-go/v2/object"
|
||||
cidtest "github.com/nspcc-dev/neofs-sdk-go/container/id/test"
|
||||
"github.com/nspcc-dev/neofs-sdk-go/object"
|
||||
oidSDK "github.com/nspcc-dev/neofs-sdk-go/object/id"
|
||||
oid "github.com/nspcc-dev/neofs-sdk-go/object/id"
|
||||
oidtest "github.com/nspcc-dev/neofs-sdk-go/object/id/test"
|
||||
sessiontest "github.com/nspcc-dev/neofs-sdk-go/session/test"
|
||||
"github.com/nspcc-dev/neofs-sdk-go/storagegroup"
|
||||
|
@ -117,7 +117,7 @@ func TestFormatValidator_Validate(t *testing.T) {
|
|||
require.Error(t, v.ValidateContent(obj)) // no tombstone content
|
||||
|
||||
content := object.NewTombstone()
|
||||
content.SetMembers([]oidSDK.ID{oidtest.ID()})
|
||||
content.SetMembers([]oid.ID{oidtest.ID()})
|
||||
|
||||
data, err := content.Marshal()
|
||||
require.NoError(t, err)
|
||||
|
@ -126,7 +126,7 @@ func TestFormatValidator_Validate(t *testing.T) {
|
|||
|
||||
require.Error(t, v.ValidateContent(obj)) // no members in tombstone
|
||||
|
||||
content.SetMembers([]oidSDK.ID{oidtest.ID()})
|
||||
content.SetMembers([]oid.ID{oidtest.ID()})
|
||||
|
||||
data, err = content.Marshal()
|
||||
require.NoError(t, err)
|
||||
|
@ -167,7 +167,7 @@ func TestFormatValidator_Validate(t *testing.T) {
|
|||
|
||||
require.Error(t, v.ValidateContent(obj))
|
||||
|
||||
content.SetMembers([]oidSDK.ID{oidtest.ID()})
|
||||
content.SetMembers([]oid.ID{oidtest.ID()})
|
||||
|
||||
data, err = content.Marshal()
|
||||
require.NoError(t, err)
|
||||
|
|
|
@ -2,26 +2,22 @@ package object
|
|||
|
||||
import (
|
||||
"github.com/nspcc-dev/neofs-sdk-go/object"
|
||||
addressSDK "github.com/nspcc-dev/neofs-sdk-go/object/address"
|
||||
oid "github.com/nspcc-dev/neofs-sdk-go/object/id"
|
||||
)
|
||||
|
||||
// AddressOf returns the address of the object.
|
||||
func AddressOf(obj *object.Object) *addressSDK.Address {
|
||||
if obj != nil {
|
||||
addr := addressSDK.NewAddress()
|
||||
func AddressOf(obj *object.Object) oid.Address {
|
||||
var addr oid.Address
|
||||
|
||||
id, ok := obj.ID()
|
||||
if ok {
|
||||
addr.SetObjectID(id)
|
||||
}
|
||||
|
||||
cnr, ok := obj.ContainerID()
|
||||
if ok {
|
||||
addr.SetContainerID(cnr)
|
||||
}
|
||||
|
||||
return addr
|
||||
id, ok := obj.ID()
|
||||
if ok {
|
||||
addr.SetObject(id)
|
||||
}
|
||||
|
||||
return nil
|
||||
cnr, ok := obj.ContainerID()
|
||||
if ok {
|
||||
addr.SetContainer(cnr)
|
||||
}
|
||||
|
||||
return addr
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue