Alex Vanin
10137b44dd
[ #126 ] v2: make stable marshal wrapper public
...
This wrapper can be used outside of v2 packages to
use SignDataWithHandler function. This function uses
DataSource interface and this wrapper implements
this interface based on stable marshal structures.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:45:11 +03:00
Alex Vanin
86d56086e3
Rename unified client constructors
...
Client constructor `New` will be used as `package.New()`
in external packages. This definition is not very clear
since it can create new structure or new client or whatever.
`package.NewClient()` is quite unambiguous.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:45:08 +03:00
Leonard Lyubich
55a6509e8f
v2: Define API service interfaces
...
Define interfaces that reflect service (Accounting, Container, Session)
declarations in the API.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:44:39 +03:00
Alex Vanin
ecb0a4be67
Split object service structs from types
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:36 +03:00
Alex Vanin
ae1c1a351c
Fix unified client tests
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:33 +03:00
Alex Vanin
252b7036c7
Adopt service session removal in packages
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:30 +03:00
Alex Vanin
07f25bd012
Merge session and service packages into session package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:28 +03:00
Alex Vanin
933bcf300f
Move bearer token to acl package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:25 +03:00
Alex Vanin
5f2770d522
Separate type definition in accounting/grpc
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:21 +03:00
Alex Vanin
db12420c99
Move version and signature structures to refs package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:19 +03:00
Alex Vanin
f1addc4cc5
Use checksum structure in object package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:16 +03:00
Alex Vanin
4405492640
Use checksum structure in storagegroup package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:13 +03:00
Alex Vanin
6787648027
Add unified checksum type in refs package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:09 +03:00
Alex Vanin
556be90818
Recompile proto files with neofs-api jindo-rc-1
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:06 +03:00
Alex Vanin
bcacfb9cf6
Add object service interface for external clients
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:04 +03:00
Alex Vanin
e55b59bde7
Use protocol-specific names for stream structures
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:44:01 +03:00
Alex Vanin
5e25c76f40
Add client for object service
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:43:59 +03:00
Leonard Lyubich
f4b734b58e
v2/container: Cover universal client with unit test
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:56 +03:00
Leonard Lyubich
7b491829b9
v2/container: Add universal client
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:54 +03:00
Leonard Lyubich
cb7831b00c
v2/container: Implement thin NeoFS gRPC client
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:52 +03:00
Leonard Lyubich
e046e3fd04
v2/session: Cover universal client with unit test
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:49 +03:00
Leonard Lyubich
c62cd5c5a9
v2/session: Add universal client
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:47 +03:00
Leonard Lyubich
8f48c9c2f7
v2/session: Implement thin NeoFS gRPC client
...
Define thin wrapper over the generated gRPC Accounting service client to
fix some of its options.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:44 +03:00
Leonard Lyubich
288b89630b
v2/accounting: Cover universal client with unit test
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:41 +03:00
Leonard Lyubich
5206d14c16
v2/accounting: Add universal client
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:39 +03:00
Leonard Lyubich
9253dac753
v2: Add cross-service client package
...
Add package with cross-service client utilities for working with transport
protocols and basic network types.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:36 +03:00
Leonard Lyubich
28d8acc58a
v2/accounting: Implement thin NeoFS gRPC client
...
Defines thin wrapper over the generated gRPC Accounting service client to
fix some of its options.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:33 +03:00
Leonard Lyubich
53ce0967c6
v2/signature: Support all service requests/responses
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:30 +03:00
Alex Vanin
dc91753206
Add stable marshal for object service
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:43:27 +03:00
Alex Vanin
93d2d12984
Add stable marshal for object structure
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:43:24 +03:00
Alex Vanin
e553843552
Update unified DeleteRequestBody structure after api update
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:43:21 +03:00
Alex Vanin
61c536148d
Fix short header version setter stack overflow
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:43:19 +03:00
Leonard Lyubich
e0eb67bac8
v2/signature: Add test for BalanceResponse
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:16 +03:00
Leonard Lyubich
db97b782c0
v2/signature: Unify request and response signing
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:43:13 +03:00
Alex Vanin
82110751e7
Add stable marshal for container package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:43:11 +03:00
Alex Vanin
c94cb44b58
Update neofs-api to latest jindo version
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:43:07 +03:00
Alex Vanin
1592151621
Add stable marshal for session package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:43:01 +03:00
Leonard Lyubich
7a55865f74
v2/object: Implement uni-structures for ObjectService
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:42:59 +03:00
Alex Vanin
d4336d8d5b
Simplify marshal with nested structure helper
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:57 +03:00
Alex Vanin
b47ec9e056
Add stable marshal for accounting package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:54 +03:00
Alex Vanin
08d3debc3a
Fix SetBalance setter
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:49 +03:00
Alex Vanin
c214d4d763
Add stable marshal for service package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:46 +03:00
Alex Vanin
c96598713e
Fix missed x-header set in converters
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:43 +03:00
Leonard Lyubich
b197e382ca
v2/object: Implement uni-structures for Object
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:42:41 +03:00
Leonard Lyubich
7b93298263
v2/container: Implement remaining uni-structures
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:42:38 +03:00
Alex Vanin
d7c4dc333c
Fix some lint warnings
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:35 +03:00
Alex Vanin
ddbeaa93b3
Add stable marshal of acl table
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:32 +03:00
Alex Vanin
6e42ba8d22
Add stable marshal of acl record
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:30 +03:00
Alex Vanin
64b456996e
Sync acl enums with proto definition
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:28 +03:00
Alex Vanin
5880875bd9
Add stable marshal of target info in acl package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:25 +03:00
Alex Vanin
5623ce0124
Add stable marshal of header filter in acl package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:23 +03:00
Leonard Lyubich
e5faf622df
v2/session: Implement session uni-structures
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:42:19 +03:00
Leonard Lyubich
57dcf01f6b
v2/service: Fill SessionToken uni-structure
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:42:16 +03:00
Leonard Lyubich
ae2e951b77
v2/container: Implement Container uni-structure
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:42:14 +03:00
Leonard Lyubich
9f4d24b592
v2/container/grpc: Implement needed setters
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:42:11 +03:00
Leonard Lyubich
ddd3ba1bf2
v2/netmap: Define uni PlacementPolicy type
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:42:09 +03:00
Alex Vanin
1ae7f9b491
Fix lint warnings in storage group package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:05 +03:00
Alex Vanin
304103c6fa
Add stable marshal for storage group package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:42:00 +03:00
Alex Vanin
b3cb483894
Adopt neofs-api structure changes
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:41:58 +03:00
Alex Vanin
8a94a6344a
Recompile proto files with latest neofs-api
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:41:55 +03:00
Alex Vanin
2c33e22db5
Add stable marshal for refs package
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:41:52 +03:00
Alex Vanin
65e5457a21
Fix pointer name in container id methods
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:41:46 +03:00
Leonard Lyubich
e599468420
v2/service: Rename header setters
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:44 +03:00
Leonard Lyubich
e84c8aee2c
v2/accounting: Implement uni BalanceResponse
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:41 +03:00
Leonard Lyubich
9df86935f5
v2/accounting: Implement Decimal uni-structure
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:39 +03:00
Leonard Lyubich
890d8291e7
v2/service: Implement response uni-structures
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:36 +03:00
Leonard Lyubich
1d5773b6ff
v2/service: Replace request header converters
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:34 +03:00
Leonard Lyubich
18737e128c
v2/service: Fill BearerToken uni-structure
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:31 +03:00
Leonard Lyubich
c55a9fa9bd
v2/service: Gather converters in one file
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:27 +03:00
Leonard Lyubich
01581443a3
v2/acl: Implement gRPC converters
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:25 +03:00
Leonard Lyubich
77962e1d39
v2/acl: Implement uni-types
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:22 +03:00
Leonard Lyubich
8ebca8eff3
v2/storagegroup: Implement gRPC converters
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:19 +03:00
Leonard Lyubich
4b7f532e52
v2/storagegroup: Implement uni-structure
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:15 +03:00
Leonard Lyubich
a3f0c5537c
v2/refs: Implement gRPC converters
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:12 +03:00
Leonard Lyubich
1b262fc072
v2/refs: Implement remaining uni-structures
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:41:09 +03:00
Alex Vanin
51e1c3bbcb
Remove empty v2/convert.go
2020-09-18 10:40:51 +03:00
Alex Vanin
60e9c3d0d3
Update structure with grpc subdir
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:40:48 +03:00
Leonard Lyubich
6191903326
Implement new request signing mechanism
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-09-18 10:40:45 +03:00
Alex Vanin
59858805a8
Update field names in setters and tests
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-09-18 10:40:40 +03:00
Alex Vanin
8aca8c5787
Update proto files from latest jindo
2020-09-18 10:40:36 +03:00
Alex Vanin
ca917e42d0
Fix marshaller test
2020-09-18 10:40:33 +03:00
Alex Vanin
12e7b5f16b
Remove proto files from the repo
2020-09-18 10:40:28 +03:00
Alex Vanin
ff866195c4
Add version constsant to v2
2020-09-18 10:40:25 +03:00
Alex Vanin
1f143e54bd
Move api-v2 files into v2 subdir
...
This subdir contains generated proto files
and small wrappers.
2020-09-18 10:40:17 +03:00