Evgeniy Kulikov
20273357f6
[ #147 ] Work around object package
...
- implement Stringer interface and Parse method for object.Address
- increase test coverage
closes #147
Signed-off-by: Evgeniy Kulikov <kim@nspcc.ru>
2020-10-15 11:05:37 +03:00
Evgeniy Kulikov
f5b442fe3b
[ #147 ] Work around object package
...
- implement Stringer interface and Parse method for object.ID
- increase test coverage
closes #147
Signed-off-by: Evgeniy Kulikov <kim@nspcc.ru>
2020-10-15 11:05:37 +03:00
Leonard Lyubich
cf70026c7e
[ #164 ] sdk/container: Implement Equal method on ID
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-01 10:06:30 +03:00
Leonard Lyubich
1305bc750e
[ #164 ] sdk/object: Add HasParent method
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-01 10:06:30 +03:00
Leonard Lyubich
2a2e4d8577
[ #164 ] sdk/object: Implement method to reset relation fields
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-01 10:06:30 +03:00
Leonard Lyubich
f3bddc2ba5
[ #164 ] sdk/object: Define filters to search virtual objects
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-01 10:06:30 +03:00
Leonard Lyubich
09e6093e64
[ #164 ] sdk/object: Define filters to search root objects
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-01 10:06:30 +03:00
Leonard Lyubich
9799e5d48c
[ #164 ] sdk/object: Return nil parent if parent fields are empty
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-01 10:06:30 +03:00
Leonard Lyubich
ae81f4584e
[ #164 ] sdk/object: Add parent ID getter and setter
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-01 10:06:30 +03:00
Leonard Lyubich
420d956062
[ #162 ] sdk/object: Detach header verification functions
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-29 15:26:41 +03:00
Leonard Lyubich
d19e5418da
[ #159 ] sdk: Define object range in object pkg
...
Define Range type in object package. Replace Range in client package with
the new one.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-25 15:58:24 +03:00
Leonard Lyubich
14fa89b819
[ #155 ] sdk/object: Add Object to RawObject converter
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-22 18:07:14 +03:00
Leonard Lyubich
cecdeeac73
[ #155 ] sdk/object: Add CutPayload method to RawObject
...
Add CutPayload method that returns RawObject's copy with untethered empty
payload. Changing the result payload doesn't affect source object. Changing
the other fields affects source object.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-22 18:07:14 +03:00
Leonard Lyubich
dbb5102c02
[ #155 ] sdk/object: Add object type getter/setter
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-22 18:07:14 +03:00
Leonard Lyubich
2fb1547cd8
[ #155 ] sdk/object: Define object types
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-22 18:07:14 +03:00
Leonard Lyubich
c66b23995c
[ #155 ] sdk/object: Add session token getter/setter
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-22 18:07:14 +03:00
Alex Vanin
549fcad76e
[ #148 ] sdk/object: Change search filters v2 converter return type
...
Unified structures from v2 package work with the slice of pointers.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
353448c0c3
[ #149 ] sdk/object: Add address field getters and setters
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Alex Vanin
fea8cd48f2
[ #146 ] sdk/object: Add structures for object search rpc call
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:45:11 +03:00
Alex Vanin
f60069ec9f
[ #146 ] sdk/object: Move well-known header const to object type
...
Extended ACL filters and object search filters use strings to specify
well-known object headers, such as owner id, object id, etc. To unify
these constant they've been moved into object package, because they
specifying object related headers.
This should be noted in nspcc-dev/neofs-spec#12
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
0b9ddd10f8
[ #145 ] sdk/object: Implement Object deserialization function
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
1ac6f2eeeb
[ #145 ] sdk/object: Refactor logic of field setters
...
In previous implementation RawObject constructor initialized internal v2
Object structure recursively so that further you can directly set the values
of nested fields. This caused the object created by constructor New to be
different from the object created from the empty object v2.
Remove recursive initialization of v2 Object from New and NewRaw
constructors. Make setters to initialize nested structures on demand.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
4fd6839473
[ #140 ] sdk/object: Implement object format control functions
...
Implement function for calculating, setting and checking object verification
fields.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
bfdf8a452f
[ #140 ] sdk/object: Implement ID comparison method
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
6ce70d4a18
[ #140 ] sdk/object: Refactor object types
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
20d644758b
[ #140 ] sdk/object: Define Attribute type
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
524280a5e8
[ #140 ] sdk: Refactor reference types
...
Refactor v2-compatible reference types to be wrappers over corresponding
types from v2.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
9b0eef0d43
[ #135 ] sdk/object: Add Release method to RawObject
...
Implement Release method that converts RawObject to read-only finalized
Object instance. Remove ToV2 method overriding from Object.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
047bae63d0
[ #135 ] sdk/object: Fix IDFromV2 nil-behavior
...
Remove nil if-statement from IDFromV2 function to which avoids checking the
correctness of the identifier format. From now IDFromV2 returns format error
on nil argument.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
acbdbd410e
[ #132 ] sdk/object: Implement useful methods and function
...
Implement method to get address of the object. Implement method to copy the
object w/o payload. Implement function of object deserialization.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
f18e8535c5
[ #132 ] sdk/object: Add payload field to Object
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
c125749c6e
[ #132 ] sdk/object: Implement Address type
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
8c3f8268b9
[ #130 ] sdk: Define object types
...
Define Object type that represents the immutable NeoFS object. Define
RawObject type that provides interface for convenient construction of NeoFS
object.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00
Leonard Lyubich
a65db08608
[ #130 ] sdk: Define object identifier type
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:45:11 +03:00