forked from TrueCloudLab/frostfs-api-go
[#209] pkg/object: Support splitID field in SDK library
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
This commit is contained in:
parent
b9778464b9
commit
6b0bd42f25
3 changed files with 34 additions and 0 deletions
|
@ -110,6 +110,11 @@ func (o *RawObject) SetChildren(v ...*ID) {
|
||||||
o.setChildren(v...)
|
o.setChildren(v...)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SetSplitID sets split identifier for the split object.
|
||||||
|
func (o *RawObject) SetSplitID(v []byte) {
|
||||||
|
o.setSplitID(v)
|
||||||
|
}
|
||||||
|
|
||||||
// SetParentID sets identifier of the parent object.
|
// SetParentID sets identifier of the parent object.
|
||||||
func (o *RawObject) SetParentID(v *ID) {
|
func (o *RawObject) SetParentID(v *ID) {
|
||||||
o.setParentID(v)
|
o.setParentID(v)
|
||||||
|
|
|
@ -5,6 +5,7 @@ import (
|
||||||
"crypto/sha256"
|
"crypto/sha256"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
"github.com/google/uuid"
|
||||||
"github.com/nspcc-dev/neofs-api-go/pkg"
|
"github.com/nspcc-dev/neofs-api-go/pkg"
|
||||||
"github.com/nspcc-dev/neofs-api-go/pkg/container"
|
"github.com/nspcc-dev/neofs-api-go/pkg/container"
|
||||||
"github.com/nspcc-dev/neofs-api-go/pkg/owner"
|
"github.com/nspcc-dev/neofs-api-go/pkg/owner"
|
||||||
|
@ -190,6 +191,19 @@ func TestRawObject_SetChildren(t *testing.T) {
|
||||||
require.Equal(t, []*ID{id1, id2}, obj.Children())
|
require.Equal(t, []*ID{id1, id2}, obj.Children())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestRawObject_SetSplitID(t *testing.T) {
|
||||||
|
obj := NewRaw()
|
||||||
|
|
||||||
|
require.Nil(t, obj.SplitID())
|
||||||
|
|
||||||
|
splitID, err := uuid.New().MarshalBinary()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
obj.SetSplitID(splitID)
|
||||||
|
|
||||||
|
require.Equal(t, obj.SplitID(), splitID)
|
||||||
|
}
|
||||||
|
|
||||||
func TestRawObject_SetParent(t *testing.T) {
|
func TestRawObject_SetParent(t *testing.T) {
|
||||||
obj := NewRaw()
|
obj := NewRaw()
|
||||||
|
|
||||||
|
|
|
@ -251,6 +251,21 @@ func (o *rwObject) setChildren(v ...*ID) {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SplitID return split identity of split object. If object is not split
|
||||||
|
// returns nil.
|
||||||
|
func (o *rwObject) SplitID() []byte {
|
||||||
|
return (*object.Object)(o).
|
||||||
|
GetHeader().
|
||||||
|
GetSplit().
|
||||||
|
GetSplitID()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (o *rwObject) setSplitID(id []byte) {
|
||||||
|
o.setSplitFields(func(split *object.SplitHeader) {
|
||||||
|
split.SetSplitID(id)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
// ParentID returns identifier of the parent object.
|
// ParentID returns identifier of the parent object.
|
||||||
func (o *rwObject) ParentID() *ID {
|
func (o *rwObject) ParentID() *ID {
|
||||||
return NewIDFromV2(
|
return NewIDFromV2(
|
||||||
|
|
Loading…
Reference in a new issue