forked from TrueCloudLab/frostfs-contract
*: goimports -w
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
This commit is contained in:
parent
9052ec62d6
commit
8ca71d22b2
11 changed files with 152 additions and 154 deletions
|
@ -14,7 +14,7 @@ one of the alphabetical contracts to emit GAS. To vote for a new list of side
|
|||
chain committee, alphabet nodes of the Inner Ring create multisignature transactions
|
||||
for each alphabet contract.
|
||||
|
||||
Contract notifications
|
||||
# Contract notifications
|
||||
|
||||
Alphabet contract does not produce notifications to process.
|
||||
*/
|
||||
|
|
|
@ -15,7 +15,7 @@ nodes send a stable marshaled version of the DataAuditResult structure to the
|
|||
contract. When Alphabet nodes of the Inner Ring perform settlement operations,
|
||||
they make a list and get these AuditResultStructures from the audit contract.
|
||||
|
||||
Contract notifications
|
||||
# Contract notifications
|
||||
|
||||
Audit contract does not produce notifications to process.
|
||||
*/
|
||||
|
|
|
@ -15,29 +15,29 @@ minting of NEOFS tokens in Balance contract. Withdraw locks some NEOFS tokens
|
|||
in a special lock account. When NeoFS contract transfers GAS assets back to the
|
||||
user, the lock account is destroyed with burn operation.
|
||||
|
||||
Contract notifications
|
||||
# Contract notifications
|
||||
|
||||
Transfer notification. This is a NEP-17 standard notification.
|
||||
|
||||
Transfer:
|
||||
- name: from
|
||||
type: Hash160
|
||||
- name: to
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
Transfer:
|
||||
- name: from
|
||||
type: Hash160
|
||||
- name: to
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
|
||||
TransferX notification. This is an enhanced transfer notification with details.
|
||||
|
||||
TransferX:
|
||||
- name: from
|
||||
type: Hash160
|
||||
- name: to
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
- name: details
|
||||
type: ByteArray
|
||||
TransferX:
|
||||
- name: from
|
||||
type: Hash160
|
||||
- name: to
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
- name: details
|
||||
type: ByteArray
|
||||
|
||||
Lock notification. This notification is produced when a lock account is
|
||||
created. It contains information about the mainchain transaction that has produced
|
||||
|
@ -45,35 +45,34 @@ the asset lock, the address of the lock account and the NeoFS epoch number until
|
|||
lock account is valid. Alphabet nodes of the Inner Ring catch notification and initialize
|
||||
Cheque method invocation of NeoFS contract.
|
||||
|
||||
Lock:
|
||||
- name: txID
|
||||
type: ByteArray
|
||||
- name: from
|
||||
type: Hash160
|
||||
- name: to
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
- name: until
|
||||
type: Integer
|
||||
Lock:
|
||||
- name: txID
|
||||
type: ByteArray
|
||||
- name: from
|
||||
type: Hash160
|
||||
- name: to
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
- name: until
|
||||
type: Integer
|
||||
|
||||
Mint notification. This notification is produced when user balance is
|
||||
replenished from deposit in the mainchain.
|
||||
|
||||
Mint:
|
||||
- name: to
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
|
||||
Mint:
|
||||
- name: to
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
|
||||
Burn notification. This notification is produced after user balance is reduced
|
||||
when NeoFS contract has transferred GAS assets back to the user.
|
||||
|
||||
Burn:
|
||||
- name: from
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
Burn:
|
||||
- name: from
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
*/
|
||||
package balance
|
||||
|
|
|
@ -7,62 +7,62 @@ containers or extended ACLs, it is done by Alphabet nodes of the Inner Ring.
|
|||
Alphabet nodes approve it by invoking the same Put or SetEACL methods with
|
||||
the same arguments.
|
||||
|
||||
Contract notifications
|
||||
# Contract notifications
|
||||
|
||||
containerPut notification. This notification is produced when a user wants to
|
||||
create a new container. Alphabet nodes of the Inner Ring catch the notification and
|
||||
validate container data, signature and token if present.
|
||||
|
||||
containerPut:
|
||||
- name: container
|
||||
type: ByteArray
|
||||
- name: signature
|
||||
type: Signature
|
||||
- name: publicKey
|
||||
type: PublicKey
|
||||
- name: token
|
||||
type: ByteArray
|
||||
containerPut:
|
||||
- name: container
|
||||
type: ByteArray
|
||||
- name: signature
|
||||
type: Signature
|
||||
- name: publicKey
|
||||
type: PublicKey
|
||||
- name: token
|
||||
type: ByteArray
|
||||
|
||||
containerDelete notification. This notification is produced when a container owner
|
||||
wants to delete a container. Alphabet nodes of the Inner Ring catch the notification
|
||||
and validate container ownership, signature and token if present.
|
||||
|
||||
containerDelete:
|
||||
- name: containerID
|
||||
type: ByteArray
|
||||
- name: signature
|
||||
type: Signature
|
||||
- name: token
|
||||
type: ByteArray
|
||||
containerDelete:
|
||||
- name: containerID
|
||||
type: ByteArray
|
||||
- name: signature
|
||||
type: Signature
|
||||
- name: token
|
||||
type: ByteArray
|
||||
|
||||
setEACL notification. This notification is produced when a container owner wants
|
||||
to update an extended ACL of a container. Alphabet nodes of the Inner Ring catch
|
||||
the notification and validate container ownership, signature and token if
|
||||
present.
|
||||
|
||||
setEACL:
|
||||
- name: eACL
|
||||
type: ByteArray
|
||||
- name: signature
|
||||
type: Signature
|
||||
- name: publicKey
|
||||
type: PublicKey
|
||||
- name: token
|
||||
type: ByteArray
|
||||
setEACL:
|
||||
- name: eACL
|
||||
type: ByteArray
|
||||
- name: signature
|
||||
type: Signature
|
||||
- name: publicKey
|
||||
type: PublicKey
|
||||
- name: token
|
||||
type: ByteArray
|
||||
|
||||
StartEstimation notification. This notification is produced when Storage nodes
|
||||
should exchange estimation values of container sizes among other Storage nodes.
|
||||
|
||||
StartEstimation:
|
||||
- name: epoch
|
||||
type: Integer
|
||||
StartEstimation:
|
||||
- name: epoch
|
||||
type: Integer
|
||||
|
||||
StopEstimation notification. This notification is produced when Storage nodes
|
||||
should calculate average container size based on received estimations and store
|
||||
it in Container contract.
|
||||
|
||||
StopEstimation:
|
||||
- name: epoch
|
||||
type: Integer
|
||||
StopEstimation:
|
||||
- name: epoch
|
||||
type: Integer
|
||||
*/
|
||||
package container
|
||||
|
|
97
neofs/doc.go
97
neofs/doc.go
|
@ -12,84 +12,83 @@ NeoFS contract contains the actual list of Alphabet nodes in the sidechain.
|
|||
Network configuration is also stored in NeoFS contract. All changes in
|
||||
configuration are mirrored in the sidechain with notifications.
|
||||
|
||||
Contract notifications
|
||||
# Contract notifications
|
||||
|
||||
Deposit notification. This notification is produced when user transfers native
|
||||
GAS to the NeoFS contract address. The same amount of NEOFS token will be
|
||||
minted in Balance contract in the sidechain.
|
||||
|
||||
Deposit:
|
||||
- name: from
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
- name: receiver
|
||||
type: Hash160
|
||||
- name: txHash
|
||||
type: Hash256
|
||||
Deposit:
|
||||
- name: from
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
- name: receiver
|
||||
type: Hash160
|
||||
- name: txHash
|
||||
type: Hash256
|
||||
|
||||
Withdraw notification. This notification is produced when a user wants to
|
||||
withdraw GAS from the internal NeoFS balance and has paid fee for that.
|
||||
|
||||
Withdraw:
|
||||
- name: user
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
- name: txHash
|
||||
type: Hash256
|
||||
|
||||
Withdraw:
|
||||
- name: user
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
- name: txHash
|
||||
type: Hash256
|
||||
|
||||
Cheque notification. This notification is produced when NeoFS contract
|
||||
has successfully transferred assets back to the user after withdraw.
|
||||
|
||||
Cheque:
|
||||
- name: id
|
||||
type: ByteArray
|
||||
- name: user
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
- name: lockAccount
|
||||
type: ByteArray
|
||||
Cheque:
|
||||
- name: id
|
||||
type: ByteArray
|
||||
- name: user
|
||||
type: Hash160
|
||||
- name: amount
|
||||
type: Integer
|
||||
- name: lockAccount
|
||||
type: ByteArray
|
||||
|
||||
Bind notification. This notification is produced when a user wants to bind
|
||||
public keys with the user account (OwnerID). Keys argument is an array of ByteArray.
|
||||
|
||||
Bind:
|
||||
- name: user
|
||||
type: ByteArray
|
||||
- name: keys
|
||||
type: Array
|
||||
Bind:
|
||||
- name: user
|
||||
type: ByteArray
|
||||
- name: keys
|
||||
type: Array
|
||||
|
||||
Unbind notification. This notification is produced when a user wants to unbind
|
||||
public keys with the user account (OwnerID). Keys argument is an array of ByteArray.
|
||||
|
||||
Unbind:
|
||||
- name: user
|
||||
type: ByteArray
|
||||
- name: keys
|
||||
type: Array
|
||||
Unbind:
|
||||
- name: user
|
||||
type: ByteArray
|
||||
- name: keys
|
||||
type: Array
|
||||
|
||||
AlphabetUpdate notification. This notification is produced when Alphabet nodes
|
||||
have updated their lists in the contract. Alphabet argument is an array of ByteArray. It
|
||||
contains public keys of new alphabet nodes.
|
||||
|
||||
AlphabetUpdate:
|
||||
- name: id
|
||||
type: ByteArray
|
||||
- name: alphabet
|
||||
type: Array
|
||||
AlphabetUpdate:
|
||||
- name: id
|
||||
type: ByteArray
|
||||
- name: alphabet
|
||||
type: Array
|
||||
|
||||
SetConfig notification. This notification is produced when Alphabet nodes update
|
||||
NeoFS network configuration value.
|
||||
|
||||
SetConfig
|
||||
- name: id
|
||||
type: ByteArray
|
||||
- name: key
|
||||
type: ByteArray
|
||||
- name: value
|
||||
type: ByteArray
|
||||
SetConfig
|
||||
- name: id
|
||||
type: ByteArray
|
||||
- name: key
|
||||
type: ByteArray
|
||||
- name: value
|
||||
type: ByteArray
|
||||
*/
|
||||
package neofs
|
||||
|
|
|
@ -13,7 +13,7 @@ by invoking Bind or Unbind methods of NeoFS contract in the mainchain. After tha
|
|||
Alphabet nodes produce multisigned AddKey and RemoveKey invocations of NeoFSID
|
||||
contract.
|
||||
|
||||
Contract notifications
|
||||
# Contract notifications
|
||||
|
||||
NeoFSID contract does not produce notifications to process.
|
||||
*/
|
||||
|
|
|
@ -5,30 +5,30 @@ Netmap contract stores and manages NeoFS network map, Storage node candidates
|
|||
and epoch number counter. In notary disabled environment, contract also stores
|
||||
a list of Inner Ring node keys.
|
||||
|
||||
Contract notifications
|
||||
# Contract notifications
|
||||
|
||||
AddPeer notification. This notification is produced when a Storage node sends
|
||||
a bootstrap request by invoking AddPeer method.
|
||||
|
||||
AddPeer
|
||||
- name: nodeInfo
|
||||
type: ByteArray
|
||||
AddPeer
|
||||
- name: nodeInfo
|
||||
type: ByteArray
|
||||
|
||||
UpdateState notification. This notification is produced when a Storage node wants
|
||||
to change its state (go offline) by invoking UpdateState method. Supported
|
||||
states: (2) -- offline.
|
||||
|
||||
UpdateState
|
||||
- name: state
|
||||
type: Integer
|
||||
- name: publicKey
|
||||
type: PublicKey
|
||||
UpdateState
|
||||
- name: state
|
||||
type: Integer
|
||||
- name: publicKey
|
||||
type: PublicKey
|
||||
|
||||
NewEpoch notification. This notification is produced when a new epoch is applied
|
||||
in the network by invoking NewEpoch method.
|
||||
|
||||
NewEpoch
|
||||
- name: epoch
|
||||
type: Integer
|
||||
NewEpoch
|
||||
- name: epoch
|
||||
type: Integer
|
||||
*/
|
||||
package netmap
|
||||
|
|
|
@ -15,7 +15,7 @@ the multisignature transaction. Therefore, NeoVM executes Verify method of the
|
|||
contract and if invocation is verified, Processing contract pays for the
|
||||
execution.
|
||||
|
||||
Contract notifications
|
||||
# Contract notifications
|
||||
|
||||
Processing contract does not produce notifications to process.
|
||||
*/
|
||||
|
|
|
@ -14,7 +14,7 @@ Proxy contract is used as the first signer in a multisignature transaction.
|
|||
Therefore, NeoVM executes Verify method of the contract; and if invocation is
|
||||
verified, Proxy contract pays for the execution.
|
||||
|
||||
Contract notifications
|
||||
# Contract notifications
|
||||
|
||||
Proxy contract does not produce notifications to process.
|
||||
*/
|
||||
|
|
|
@ -10,7 +10,7 @@ During settlement process, Alphabet nodes fetch all DataAuditResult structures
|
|||
from the epoch and execute balance transfers from data owners to Storage and
|
||||
Inner Ring nodes if data audit succeeds.
|
||||
|
||||
Contract notifications
|
||||
# Contract notifications
|
||||
|
||||
Reputation contract does not produce notifications to process.
|
||||
*/
|
||||
|
|
|
@ -5,33 +5,33 @@ Subnet contract stores and manages NeoFS subnetwork states. It allows registerin
|
|||
and deleting subnetworks, limiting access to them, and defining a list of the Storage
|
||||
Nodes that can be included in them.
|
||||
|
||||
Contract notifications
|
||||
# Contract notifications
|
||||
|
||||
Put notification. This notification is produced when a new subnetwork is
|
||||
registered by invoking Put method.
|
||||
|
||||
Put
|
||||
- name: id
|
||||
type: ByteArray
|
||||
- name: ownerKey
|
||||
type: PublicKey
|
||||
- name: info
|
||||
type: ByteArray
|
||||
Put
|
||||
- name: id
|
||||
type: ByteArray
|
||||
- name: ownerKey
|
||||
type: PublicKey
|
||||
- name: info
|
||||
type: ByteArray
|
||||
|
||||
Delete notification. This notification is produced when some subnetwork is
|
||||
deleted by invoking Delete method.
|
||||
|
||||
Delete
|
||||
- name: id
|
||||
type: ByteArray
|
||||
Delete
|
||||
- name: id
|
||||
type: ByteArray
|
||||
|
||||
RemoveNode notification. This notification is produced when some node is deleted
|
||||
by invoking RemoveNode method.
|
||||
|
||||
RemoveNode
|
||||
- name: subnetID
|
||||
type: ByteArray
|
||||
- name: node
|
||||
type: PublicKey
|
||||
RemoveNode
|
||||
- name: subnetID
|
||||
type: ByteArray
|
||||
- name: node
|
||||
type: PublicKey
|
||||
*/
|
||||
package subnet
|
||||
|
|
Loading…
Reference in a new issue