Alex Vanin
fd16b5701f
[ #486 ] morph/client: Add more global config getters
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-05-05 12:45:16 +03:00
Alex Vanin
dd1ace12f7
[ #486 ] morph/client: Add option to setup custom alphabet source in notary
...
To enable notary support in main chain, notary subsystem should not get
alphabet keys from (main chain) committee. This key fetcher is now
separated and may be overwritten by `WithAlphabetSource` option.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-05-05 12:45:16 +03:00
Alex Vanin
c84fe1360e
[ #486 ] morph/client: Remove unused fields in notary
...
With neo-go v0.94.1 verification fee can be calculated
precisely and alphabet keys are fetched from committee
instead of network map contract.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-05-05 12:45:16 +03:00
Evgenii Stratonikov
5b85519f20
[ #457 ] innerring: wait until notary tx persists on chain
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-04-27 16:57:29 +03:00
Alex Vanin
7acfc85f8a
[ #483 ] morph/client: Throw panic if notary methods are not initialized
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-04-20 09:53:44 +03:00
Alex Vanin
434ecb41da
[ #478 ] morph/client: Try to parse integer as a byte type
...
Neo node can return integers values where []byte is expected.
To cover such cases, try to parse integers in `BytesFromStackItem`.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-04-15 17:53:08 +03:00
Alex Vanin
c33512d976
[ #478 ] morph/client: Add more global config value getters
...
Including:
- typo fix for `BasicIncomeRate` method
- epoch duration getter,
- container fee getter,
- EigenTrust iterations getter.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-04-15 17:53:08 +03:00
Pavel Karpy
bd5ce4535a
[ #475 ] morph/client: Ignore "already on chain"
...
Add checking if returned error contains
"already on chain" substring. Do not
consider that behavior to be erroneous.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-04-13 20:59:27 +03:00
Pavel Karpy
4a4aee82e0
[ #474 ] morph/client: Add FaultException to error msg
...
If non-"HALT" `State` occurs after
calling `InvokeFunction` NeoGo client
method, add `FaultException` information
to returning error. Add returning state
check to `NotaryInvoke` method of the
morph/client.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-04-13 11:15:59 +03:00
Alex Vanin
05b45270c8
[ #468 ] Update neo-go to v0.94.1
...
New neo-go version provides:
- new type for roles in `RoleManagement` contract,
- methods to get keys from `RoleManagement` contract,
- new way to sign notary transaction.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-04-09 11:32:05 +03:00
Alex Vanin
e11b5bd32b
[ #465 ] morph/client: Add audit fee getter in netmap wrapper
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-04-08 17:01:00 +03:00
Alex Vanin
27cf6f5112
[ #452 ] Use API structures for reputation PeerID and GlobalTrust
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-04-06 10:35:20 +03:00
Alex Vanin
b9a1aaec23
[ #452 ] morph/client: Add reputation contract client wrapper
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-04-06 10:35:20 +03:00
Alex Vanin
9f1a49a562
[ #452 ] morph/client: Add reputation contract client
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-04-06 10:35:20 +03:00
Alex Vanin
ee29ee2c47
[ #456 ] morph/client: Print transaction hashes in LE
...
neo-go JSON RPC server expect all hashes in LE, e.g.
in `getapplicationlog` method.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-04-06 08:03:19 +03:00
Alex Vanin
43e367f52c
[ #446 ] morph/client: Remove inner ring list method
...
Inner ring list should be accessed from side chain
`RoleManagement` contract by NeoFSAlphabet role.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-26 11:53:10 +03:00
Alex Vanin
861307b192
[ #446 ] morph/client: Use on-chain source of alphabet nodes
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-26 11:53:10 +03:00
Alex Vanin
61dff99774
[ #421 ] morph/client: Add designate role getter wrapper for NeoFSAlphabet role
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-26 10:16:48 +03:00
Alex Vanin
2f6adb0465
[ #421 ] morph/client: Add role getter from designate contract
...
RoleManagement native contract (ex designate contract) stores list
of keys per role. Main net uses NeoFSAlphabet role to store keys of
alphabet nodes of inner ring. Side chain uses the same role to store
keys of all inner ring nodes, including alphabet.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-26 10:16:48 +03:00
Alex Vanin
f42c5e64fc
[ #421 ] morph/client: Add neofs list update function
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-26 10:16:48 +03:00
Alex Vanin
b3632dcd81
[ #421 ] morph/client: Add notary list update function
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-26 10:16:48 +03:00
Alex Vanin
0cd7fa415f
[ #421 ] morph/client: Add committee list getter
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-26 10:16:48 +03:00
Alex Vanin
65c04284e7
[ #421 ] morph/client: Support committee notary invoke
...
Committee invocations use other M/N parameters of multi signature
signer address. For committee M = N/2 + 1
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-26 10:16:48 +03:00
Alex Vanin
527daec69a
[ #421 ] morph/client: Support keys.PublicKeys type as contract argument
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-26 10:16:48 +03:00
Alex Vanin
b6ca7f1f87
[ #421 ] morph/client: Support native.Role type as contract argument
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-26 10:16:48 +03:00
Alex Vanin
5149a701f3
[ #433 ] Remove notary extra fee
...
`client.CalculateNotaryFee` now calculates precise
fee value.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-22 11:45:35 +03:00
Alex Vanin
ec07792c4e
[ #427 ] Update neo-go to pre-released v0.94.0 version
...
Should be compatible with NEO3 testnet.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-17 09:57:40 +03:00
Alex Vanin
8c3864e6d6
[ #404 ] innerring: Wait for deposit in initialization
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-04 12:39:15 +03:00
Alex Vanin
ddf1ac0f28
[ #404 ] morph/client: Add awaiting function
...
Awaiting function locks execution for N blocks.
Useful to wait for notary deposit.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-04 12:39:15 +03:00
Alex Vanin
83980ccb85
[ #404 ] morph/client: Support notary calls in wrappers
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-04 12:39:15 +03:00
Alex Vanin
ccaf4f5d55
[ #404 ] innerring: Enable notary support in morph client
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-04 12:39:15 +03:00
Alex Vanin
779a495625
[ #404 ] morph/client: Define notary client
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-04 12:39:15 +03:00
Alex Vanin
948823c392
[ #404 ] innerring: Get GAS script hash from neo-go client
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-04 12:39:15 +03:00
Leonard Lyubich
4c8d29ce46
[ #398 ] morph/client: Add method to read magic number
...
Implement `Client.MagicNumber` method that returns magic number of the
network to which the underlying RPC node client is connected.
Network magic value is received via `GetNetwork` method.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-02-19 19:16:40 +03:00
Leonard Lyubich
065c663bde
Update neo-go to v0.93.0
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-02-15 10:49:38 +03:00
Alex Vanin
487c9b7589
[ #363 ] Define global config and use it to fetch basic income rate
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-02-02 21:07:00 +03:00
Leonard Lyubich
1c6d37e821
[ #328 ] morph/container: Add client methods related to size estimations
...
Implement API methods of the Container contracts client corresponding
to the calls of the contract for storing the used space of the container
("putContainerSize", "getContainerSize", "listContainerSizes"). Extend
the wrapper over the client with methods abstracted from sidechen calls.
In particular, the method of storing the value will be used to record
the estimates of the used space of containers calculated by the network
participants.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-02-02 15:45:04 +03:00
Alex Vanin
70aa73cbd2
[ #355 ] moprh/client: Add start/stop container estimation methods
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-01-29 11:23:37 +03:00
Leonard Lyubich
20ad0ae82a
[ #326 ] morph/balance: Provide interface to "transferX" method's invocations
...
Implement TransferX method on Balance contract client. Implement TransferX
method on Balance client's wrapper that encapsulates it's TransferX call.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-01-29 11:04:30 +03:00
Alex Vanin
a89567a88d
[ #317 ] morph/client: Return complete eACL signature from contract
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-01-15 16:25:49 +03:00
Alex Vanin
e88c1f750d
[ #302 ] Fix golint else/return linter errors
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-01-12 18:47:02 +03:00
Leonard Lyubich
9ea75e51b2
[ #303 ] morph/netmap: Implement getting network map snapshot by epoch
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-01-12 15:48:01 +03:00
Leonard Lyubich
d58e28afee
[ #298 ] morph/netmap: Use netmap.NodeState argument in UpdatePeerState
...
Replace custom NodeState enum with the one from netmap lib. Remove no longer
used NodeState enum.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-01-11 18:42:09 +03:00
Leonard Lyubich
159351fd55
[ #298 ] morph/netmap: Fix invocation of UpdateState contract method
...
Fix incorrect method name. Fix the order of arguments (should be {state,
key}).
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-01-11 18:42:09 +03:00
Alex Vanin
fe2b1fdc4b
[ #283 ] morph/client: Implement all calls for audit contract
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-12-25 16:49:27 +03:00
Leonard Lyubich
919f4364f1
[ #269 ] morph/audit: Implement wrapper over Audit contract client
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-12-25 16:49:27 +03:00
Leonard Lyubich
07da9d31f2
[ #269 ] morph/client: Implement Audit contract client
...
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-12-25 16:49:27 +03:00
Alex Vanin
8dd7c689f2
[ #265 ] innerring: Select storage groups to audit
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-12-25 16:49:27 +03:00
Alex Vanin
feec559e47
[ #254 ] Update neo-go to preview4 compatible version
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-12-25 16:49:27 +03:00
Alex Vanin
1486cc0e29
[ #170 ] morph/client: Print reversed hash in logs
...
JSON-RPC method takes reversed hash as an input so it is
better to output reveresed hash in logs.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-12-10 17:22:37 +03:00