Commit graph

431 commits

Author SHA1 Message Date
Alex Vanin
6520d00ff0 [#14] Adopt stackitems in inner ring
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-10-02 11:25:35 +03:00
Alex Vanin
29d6ababae [#14] Adopt stackitems in morph requests
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-10-02 11:25:35 +03:00
Alex Vanin
0c06eafc60 [#14] Use stackitems in morph/client converters
In neo-go v0.91.0 testinvoke returns stackitems.Item
interface, so converters should work with this type.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
b7702349dc [#13] services/util: Support client-side stream in SignService
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
d54a5d4f66 [#13] services/util: Rename UnarySignService to SingService
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
75162d1f8d [#13] services/util: Support server-side stream in UnarySignService
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
6b4fb3a0aa [#13] services: Refactor UnarySignService
Replace UnaryHandler from structure to method arguments in order to reuse
single instance for different service methods.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
0c83e84613 [#13] services/object: Implement GetRangeHash handlers
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
7a6b62c552 [#13] services/object: Implement Delete handlers
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
881f49814a [#13] services/object: Implement Head handlers
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
652f64ae85 [#13] services/object: Implement GetRange handlers
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
62d0c50b15 [#13] services/object: Implement Put handlers
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
d03b153e09 [#13] object/grpc: Fix Put call implementation
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
f14d1fd65f [#13] services/object: Implement Get handlers
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
486aeef5df [#13] services/object: Define and implement Object executor
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
276ec2e1e0 [#13] services: Define signing Object service and implement Search
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
a0aa175fcc [#13] transport/object: Fix io.EOF check in Object gRPC handlers
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
da1961cdf9 [#13] services/util: Support server-side stream request verify
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:35 +03:00
Leonard Lyubich
f5a0e354ef [#12] services/session: Implement service executor
Implement Session service executor that generates private token and stores
it to map.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:30 +03:00
Leonard Lyubich
de12d751e9 [#12] services/session: Implement execution service
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:24 +03:00
Leonard Lyubich
7b56633185 [#12] services/session: Implement Sign/Verify service
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:25:18 +03:00
Leonard Lyubich
8539f5c2cd [#11] services/container: Implement Neo:Morph executor and service
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:24:45 +03:00
Leonard Lyubich
9e30a87022 [#11] morph: Return nil on Any stack item array type
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:24:36 +03:00
Leonard Lyubich
f71d64435e [#11] services: Implement universal Sign/Verify service
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:24:30 +03:00
Leonard Lyubich
21c750016b [#11] transport/session: Fix package name
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:24:04 +03:00
Leonard Lyubich
5022362c1a [#11] accounting: Implement ServiceExecutor on Neo:Morph client
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:23:48 +03:00
Leonard Lyubich
7cc1a2a85a [#11] accounting: Define service executor
Defines ServiceExecutor interface of the executor that handles service
request bodies and returns service response bodies. Adds Service
implementation that writes the result of ServiceExecutor to response body
and attaches the internal ResponseMetaHeader.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:23:35 +03:00
Leonard Lyubich
5cf622881f [#11] accounting: Implement signing service
Adds accounting Service implementation that verifiers request signatures and
signs responses from internal Service.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:23:29 +03:00
Leonard Lyubich
c2954aab20 [#11] transport: Implement gRPC server handlers of API service
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:23:09 +03:00
Leonard Lyubich
a87fdab324 [#11] Trim the old functionality
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-10-02 11:22:55 +03:00
Stanislav Bogatyrev
b7b5079934 Add Inner Ring code 2020-07-24 17:07:37 +03:00