Documentation ¶
Index ¶
- type APIBlockchain
- type APISupernet
- type Client
- type ClientDelegator
- type ClientOwner
- type ClientPermissionlessValidator
- type ClientStaker
- type ClientSupernet
- type ExportKeyArgs
- type ExportKeyReply
- type Factory
- type GetBalanceRequest
- type GetBalanceResponse
- type GetBlockchainStatusArgs
- type GetBlockchainStatusReply
- type GetBlockchainsResponse
- type GetCurrentSupplyArgs
- type GetCurrentSupplyReply
- type GetCurrentValidatorsArgs
- type GetCurrentValidatorsReply
- type GetFeePoolValueReply
- type GetMinStakeArgs
- type GetMinStakeReply
- type GetRewardPoolSupplyArgs
- type GetRewardPoolSupplyReply
- type GetRewardUTXOsReply
- type GetStakeArgs
- type GetStakeReply
- type GetStakingAssetIDArgs
- type GetStakingAssetIDResponse
- type GetSupernetArgs
- type GetSupernetClientResponse
- type GetSupernetResponse
- type GetSupernetsArgs
- type GetSupernetsResponse
- type GetTimestampReply
- type GetTotalStakeArgs
- type GetTotalStakeReply
- type GetTxStatusArgs
- type GetTxStatusResponse
- type GetValidatorsAtArgs
- type GetValidatorsAtReply
- type Index
- type SampleValidatorsArgs
- type SampleValidatorsReply
- type Service
- func (s *Service) ExportKey(_ *http.Request, args *ExportKeyArgs, reply *ExportKeyReply) error
- func (s *Service) GetBalance(_ *http.Request, args *GetBalanceRequest, response *GetBalanceResponse) error
- func (s *Service) GetBlock(_ *http.Request, args *api.GetBlockArgs, response *api.GetBlockResponse) error
- func (s *Service) GetBlockByHeight(_ *http.Request, args *api.GetBlockByHeightArgs, ...) error
- func (s *Service) GetBlockchainStatus(r *http.Request, args *GetBlockchainStatusArgs, ...) error
- func (s *Service) GetBlockchains(_ *http.Request, _ *struct{}, response *GetBlockchainsResponse) error
- func (s *Service) GetCurrentSupply(r *http.Request, args *GetCurrentSupplyArgs, reply *GetCurrentSupplyReply) error
- func (s *Service) GetCurrentValidators(_ *http.Request, args *GetCurrentValidatorsArgs, ...) error
- func (s *Service) GetFeePoolValue(_ *http.Request, _ *struct{}, reply *GetFeePoolValueReply) error
- func (s *Service) GetHeight(r *http.Request, _ *struct{}, response *api.GetHeightResponse) error
- func (s *Service) GetMinStake(_ *http.Request, args *GetMinStakeArgs, reply *GetMinStakeReply) error
- func (s *Service) GetRewardPoolSupply(_ *http.Request, args *GetRewardPoolSupplyArgs, ...) error
- func (s *Service) GetRewardUTXOs(_ *http.Request, args *api.GetTxArgs, reply *GetRewardUTXOsReply) error
- func (s *Service) GetStake(_ *http.Request, args *GetStakeArgs, response *GetStakeReply) error
- func (s *Service) GetStakingAssetID(_ *http.Request, args *GetStakingAssetIDArgs, ...) error
- func (s *Service) GetSupernet(_ *http.Request, args *GetSupernetArgs, response *GetSupernetResponse) error
- func (s *Service) GetSupernets(_ *http.Request, args *GetSupernetsArgs, response *GetSupernetsResponse) error
- func (s *Service) GetTimestamp(_ *http.Request, _ *struct{}, reply *GetTimestampReply) error
- func (s *Service) GetTotalStake(_ *http.Request, args *GetTotalStakeArgs, reply *GetTotalStakeReply) error
- func (s *Service) GetTx(_ *http.Request, args *api.GetTxArgs, response *api.GetTxReply) error
- func (s *Service) GetTxStatus(_ *http.Request, args *GetTxStatusArgs, response *GetTxStatusResponse) error
- func (s *Service) GetUTXOs(_ *http.Request, args *api.GetUTXOsArgs, response *api.GetUTXOsReply) error
- func (s *Service) GetValidatorsAt(r *http.Request, args *GetValidatorsAtArgs, reply *GetValidatorsAtReply) error
- func (s *Service) IssueTx(_ *http.Request, args *api.FormattedTx, response *api.JSONTxID) error
- func (s *Service) ListAddresses(_ *http.Request, args *api.UserPass, response *api.JSONAddresses) error
- func (s *Service) SampleValidators(_ *http.Request, args *SampleValidatorsArgs, reply *SampleValidatorsReply) error
- func (s *Service) ValidatedBy(r *http.Request, args *ValidatedByArgs, response *ValidatedByResponse) error
- func (s *Service) Validates(_ *http.Request, args *ValidatesArgs, response *ValidatesResponse) error
- type VM
- func (vm *VM) Clock() *mockable.Clock
- func (vm *VM) CodecRegistry() codec.Registry
- func (vm *VM) Connected(_ context.Context, nodeID ids.NodeID, _ *version.Application) error
- func (vm *VM) ConnectedSupernet(_ context.Context, nodeID ids.NodeID, supernetID ids.ID) error
- func (vm *VM) CreateHandlers(context.Context) (map[string]http.Handler, error)
- func (vm *VM) Disconnected(_ context.Context, nodeID ids.NodeID) error
- func (vm *VM) GetBlock(_ context.Context, blkID ids.ID) (snowman.Block, error)
- func (vm *VM) GetBlockIDAtHeight(_ context.Context, height uint64) (ids.ID, error)
- func (vm *VM) HealthCheck(context.Context) (interface{}, error)
- func (vm *VM) Initialize(ctx context.Context, chainCtx *snow.Context, db database.Database, ...) error
- func (vm *VM) LastAccepted(context.Context) (ids.ID, error)
- func (vm *VM) Logger() logging.Logger
- func (vm *VM) ParseBlock(_ context.Context, b []byte) (snowman.Block, error)
- func (vm *VM) SetPreference(_ context.Context, blkID ids.ID) error
- func (vm *VM) SetState(_ context.Context, state snow.State) error
- func (vm *VM) Shutdown(context.Context) error
- func (*VM) Version(context.Context) (string, error)
- type ValidatedByArgs
- type ValidatedByResponse
- type ValidatesArgs
- type ValidatesResponse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type APIBlockchain ¶
type APIBlockchain struct { // Blockchain's ID ID ids.ID `json:"id"` // Blockchain's (non-unique) human-readable name Name string `json:"name"` // Supernet that validates the blockchain SupernetID ids.ID `json:"supernetID"` // Virtual Machine the blockchain runs VMID ids.ID `json:"vmID"` // The main asset used by this chain to pay the fees ChainAssetID ids.ID `json:"chainAssetID"` }
APIBlockchain is the representation of a blockchain used in API calls
type APISupernet ¶
type APISupernet struct { // ID of the supernet ID ids.ID `json:"id"` // Each element of [ControlKeys] the address of a public key. // A transaction to add a validator to this supernet requires // signatures from [Threshold] of these keys to be valid. ControlKeys []string `json:"controlKeys"` Threshold avajson.Uint32 `json:"threshold"` }
APISupernet is a representation of a supernet used in API calls
type Client ¶
type Client interface { // GetHeight returns the current block height of the P Chain GetHeight(ctx context.Context, options ...rpc.Option) (uint64, error) // ExportKey returns the private key corresponding to [address] from [user]'s account // // Deprecated: Keys should no longer be stored on the node. ExportKey(ctx context.Context, user api.UserPass, address ids.ShortID, options ...rpc.Option) (*secp256k1.PrivateKey, error) // GetBalance returns the balance of [addrs] on the P Chain // // Deprecated: GetUTXOs should be used instead. GetBalance(ctx context.Context, addrs []ids.ShortID, options ...rpc.Option) (*GetBalanceResponse, error) // ListAddresses returns an array of platform addresses controlled by [user] // // Deprecated: Keys should no longer be stored on the node. ListAddresses(ctx context.Context, user api.UserPass, options ...rpc.Option) ([]ids.ShortID, error) // GetUTXOs returns the byte representation of the UTXOs controlled by [addrs] GetUTXOs( ctx context.Context, addrs []ids.ShortID, limit uint32, startAddress ids.ShortID, startUTXOID ids.ID, options ...rpc.Option, ) ([][]byte, ids.ShortID, ids.ID, error) // GetAtomicUTXOs returns the byte representation of the atomic UTXOs controlled by [addrs] // from [sourceChain] GetAtomicUTXOs( ctx context.Context, addrs []ids.ShortID, sourceChain string, limit uint32, startAddress ids.ShortID, startUTXOID ids.ID, options ...rpc.Option, ) ([][]byte, ids.ShortID, ids.ID, error) // GetSupernet returns information about the specified supernet GetSupernet(ctx context.Context, supernetID ids.ID, options ...rpc.Option) (GetSupernetClientResponse, error) // GetSupernets returns information about the specified supernets // // Deprecated: Supernets should be fetched from a dedicated indexer. GetSupernets(ctx context.Context, supernetIDs []ids.ID, options ...rpc.Option) ([]ClientSupernet, error) // GetStakingAssetID returns the assetID of the asset used for staking on // supernet corresponding to [supernetID] GetStakingAssetID(ctx context.Context, supernetID ids.ID, options ...rpc.Option) (ids.ID, error) // GetCurrentValidators returns the list of current validators for supernet with ID [supernetID] GetCurrentValidators(ctx context.Context, supernetID ids.ID, nodeIDs []ids.NodeID, options ...rpc.Option) ([]ClientPermissionlessValidator, error) // GetCurrentSupply returns an upper bound on the supply of AVAX in the system along with the P-chain height GetCurrentSupply(ctx context.Context, supernetID ids.ID, options ...rpc.Option) (uint64, uint64, error) // GetRewardPoolSupply returns the current supply in the reward pool GetRewardPoolSupply(ctx context.Context, supernetID ids.ID, options ...rpc.Option) (uint64, error) // GetFeePoolValue returns the current value in the fee pool GetFeePoolValue(ctx context.Context, options ...rpc.Option) (uint64, error) // SampleValidators returns the nodeIDs of a sample of [sampleSize] validators from the current validator set for supernet with ID [supernetID] SampleValidators(ctx context.Context, supernetID ids.ID, sampleSize uint16, options ...rpc.Option) ([]ids.NodeID, error) // GetBlockchainStatus returns the current status of blockchain with ID: [blockchainID] GetBlockchainStatus(ctx context.Context, blockchainID string, options ...rpc.Option) (status.BlockchainStatus, error) // ValidatedBy returns the ID of the Supernet that validates [blockchainID] ValidatedBy(ctx context.Context, blockchainID ids.ID, options ...rpc.Option) (ids.ID, error) // Validates returns the list of blockchains that are validated by the supernet with ID [supernetID] Validates(ctx context.Context, supernetID ids.ID, options ...rpc.Option) ([]ids.ID, error) // GetBlockchains returns the list of blockchains on the platform // // Deprecated: Blockchains should be fetched from a dedicated indexer. GetBlockchains(ctx context.Context, options ...rpc.Option) ([]APIBlockchain, error) // IssueTx issues the transaction and returns its txID IssueTx(ctx context.Context, tx []byte, options ...rpc.Option) (ids.ID, error) // GetTx returns the byte representation of the transaction corresponding to [txID] GetTx(ctx context.Context, txID ids.ID, options ...rpc.Option) ([]byte, error) // GetTxStatus returns the status of the transaction corresponding to [txID] GetTxStatus(ctx context.Context, txID ids.ID, options ...rpc.Option) (*GetTxStatusResponse, error) // AwaitTxDecided polls [GetTxStatus] until a status is returned that // implies the tx may be decided. // TODO: Move this function off of the Client interface into a utility // function. AwaitTxDecided( ctx context.Context, txID ids.ID, freq time.Duration, options ...rpc.Option, ) (*GetTxStatusResponse, error) // GetStake returns the amount of nAVAX that [addrs] have cumulatively // staked on the Primary Network. // // Deprecated: Stake should be calculated using GetTx and GetCurrentValidators. GetStake( ctx context.Context, addrs []ids.ShortID, validatorsOnly bool, options ...rpc.Option, ) (map[ids.ID]uint64, [][]byte, error) // GetMinStake returns the minimum staking amount in nAVAX for validators // and delegators respectively GetMinStake(ctx context.Context, supernetID ids.ID, options ...rpc.Option) (uint64, uint64, error) // GetTotalStake returns the total amount (in nAVAX) staked on the network GetTotalStake(ctx context.Context, supernetID ids.ID, options ...rpc.Option) (uint64, error) // GetRewardUTXOs returns the reward UTXOs for a transaction // // Deprecated: GetRewardUTXOs should be fetched from a dedicated indexer. GetRewardUTXOs(context.Context, *api.GetTxArgs, ...rpc.Option) ([][]byte, error) // GetTimestamp returns the current chain timestamp GetTimestamp(ctx context.Context, options ...rpc.Option) (time.Time, error) // GetValidatorsAt returns the weights of the validator set of a provided // supernet at the specified height. GetValidatorsAt( ctx context.Context, supernetID ids.ID, height uint64, options ...rpc.Option, ) (map[ids.NodeID]*validators.GetValidatorOutput, error) // GetBlock returns the block with the given id. GetBlock(ctx context.Context, blockID ids.ID, options ...rpc.Option) ([]byte, error) // GetBlockByHeight returns the block at the given [height]. GetBlockByHeight(ctx context.Context, height uint64, options ...rpc.Option) ([]byte, error) }
Client interface for interacting with the P Chain endpoint
type ClientDelegator ¶
type ClientDelegator struct { ClientStaker RewardOwner *ClientOwner PotentialReward *uint64 }
ClientDelegator is the repr. of a delegator sent over client
type ClientOwner ¶
ClientOwner is the repr. of a reward owner sent over client
type ClientPermissionlessValidator ¶
type ClientPermissionlessValidator struct { ClientStaker ValidationRewardOwner *ClientOwner DelegationRewardOwner *ClientOwner PotentialReward *uint64 AccruedDelegateeReward *uint64 DelegationFee float32 Uptime *float32 Connected *bool Signer *signer.ProofOfPossession // The delegators delegating to this validator DelegatorCount *uint64 DelegatorWeight *uint64 Delegators []ClientDelegator }
ClientPermissionlessValidator is the repr. of a permissionless validator sent over client
type ClientStaker ¶
type ClientStaker struct { // the txID of the transaction that added this staker. TxID ids.ID // the Unix time when they start staking StartTime uint64 // the Unix time when they are done staking EndTime uint64 // the validator weight when sampling validators Weight uint64 // the amount of tokens being staked. StakeAmount *uint64 // the node ID of the staker NodeID ids.NodeID }
ClientStaker is the representation of a staker sent via client.
type ClientSupernet ¶
type ClientSupernet struct { // ID of the supernet ID ids.ID // Each element of [ControlKeys] the address of a public key. // A transaction to add a validator to this supernet requires // signatures from [Threshold] of these keys to be valid. ControlKeys []ids.ShortID Threshold uint32 }
ClientSupernet is a representation of a supernet used in client methods
type ExportKeyArgs ¶
ExportKeyArgs are arguments for ExportKey
type ExportKeyReply ¶
type ExportKeyReply struct { // The decrypted PrivateKey for the Address provided in the arguments PrivateKey *secp256k1.PrivateKey `json:"privateKey"` }
ExportKeyReply is the response for ExportKey
type GetBalanceRequest ¶
type GetBalanceRequest struct {
Addresses []string `json:"addresses"`
}
type GetBalanceResponse ¶
type GetBalanceResponse struct { // Balance, in nAVAX, of the address Balance avajson.Uint64 `json:"balance"` Unlocked avajson.Uint64 `json:"unlocked"` LockedStakeable avajson.Uint64 `json:"lockedStakeable"` LockedNotStakeable avajson.Uint64 `json:"lockedNotStakeable"` Balances map[ids.ID]avajson.Uint64 `json:"balances"` Unlockeds map[ids.ID]avajson.Uint64 `json:"unlockeds"` LockedStakeables map[ids.ID]avajson.Uint64 `json:"lockedStakeables"` LockedNotStakeables map[ids.ID]avajson.Uint64 `json:"lockedNotStakeables"` UTXOIDs []*avax.UTXOID `json:"utxoIDs"` }
Note: We explicitly duplicate AVAX out of the maps to ensure backwards compatibility.
type GetBlockchainStatusArgs ¶
type GetBlockchainStatusArgs struct {
BlockchainID string `json:"blockchainID"`
}
GetBlockchainStatusArgs is the arguments for calling GetBlockchainStatus [BlockchainID] is the ID of or an alias of the blockchain to get the status of.
type GetBlockchainStatusReply ¶
type GetBlockchainStatusReply struct {
Status status.BlockchainStatus `json:"status"`
}
GetBlockchainStatusReply is the reply from calling GetBlockchainStatus [Status] is the blockchain's status.
type GetBlockchainsResponse ¶
type GetBlockchainsResponse struct { // blockchains that exist Blockchains []APIBlockchain `json:"blockchains"` }
GetBlockchainsResponse is the response from a call to GetBlockchains
type GetCurrentSupplyArgs ¶
GetCurrentSupplyArgs are the arguments for calling GetCurrentSupply
type GetCurrentSupplyReply ¶
type GetCurrentSupplyReply struct { Supply avajson.Uint64 `json:"supply"` Height avajson.Uint64 `json:"height"` }
GetCurrentSupplyReply are the results from calling GetCurrentSupply
type GetCurrentValidatorsArgs ¶
type GetCurrentValidatorsArgs struct { // Supernet we're listing the validators of // If omitted, defaults to primary network SupernetID ids.ID `json:"supernetID"` // NodeIDs of validators to request. If [NodeIDs] // is empty, it fetches all current validators. If // some nodeIDs are not currently validators, they // will be omitted from the response. NodeIDs []ids.NodeID `json:"nodeIDs"` }
GetCurrentValidatorsArgs are the arguments for calling GetCurrentValidators
type GetCurrentValidatorsReply ¶
type GetCurrentValidatorsReply struct {
Validators []interface{} `json:"validators"`
}
GetCurrentValidatorsReply are the results from calling GetCurrentValidators. Each validator contains a list of delegators to itself.
type GetFeePoolValueReply ¶
GetFeePoolValueReply are the results from calling GetFeePoolValue
type GetMinStakeArgs ¶
GetMinStakeArgs are the arguments for calling GetMinStake.
type GetMinStakeReply ¶
type GetMinStakeReply struct { // The minimum amount of tokens one must bond to be a validator MinValidatorStake avajson.Uint64 `json:"minValidatorStake"` // Minimum stake, in nAVAX, that can be delegated on the primary network MinDelegatorStake avajson.Uint64 `json:"minDelegatorStake"` }
GetMinStakeReply is the response from calling GetMinStake.
type GetRewardPoolSupplyArgs ¶
GetRewardPoolSupplyArgs are the arguments for calling GetRewardPoolSupply
type GetRewardPoolSupplyReply ¶
GetRewardPoolSupplyReply are the results from calling GetRewardPoolSupply
type GetRewardUTXOsReply ¶
type GetRewardUTXOsReply struct { // Number of UTXOs returned NumFetched avajson.Uint64 `json:"numFetched"` // The UTXOs UTXOs []string `json:"utxos"` // Encoding specifies the encoding format the UTXOs are returned in Encoding formatting.Encoding `json:"encoding"` }
GetRewardUTXOsReply defines the GetRewardUTXOs replies returned from the API
type GetStakeArgs ¶
type GetStakeArgs struct { api.JSONAddresses ValidatorsOnly bool `json:"validatorsOnly"` Encoding formatting.Encoding `json:"encoding"` }
type GetStakeReply ¶
type GetStakeReply struct { Staked avajson.Uint64 `json:"staked"` Stakeds map[ids.ID]avajson.Uint64 `json:"stakeds"` // String representation of staked outputs // Each is of type avax.TransferableOutput Outputs []string `json:"stakedOutputs"` // Encoding of [Outputs] Encoding formatting.Encoding `json:"encoding"` }
GetStakeReply is the response from calling GetStake.
type GetStakingAssetIDArgs ¶
GetStakingAssetIDArgs are the arguments to GetStakingAssetID
type GetStakingAssetIDResponse ¶
GetStakingAssetIDResponse is the response from calling GetStakingAssetID
type GetSupernetArgs ¶
type GetSupernetArgs struct { // ID of the supernet to retrieve information about SupernetID ids.ID `json:"supernetID"` }
GetSupernetArgs are the arguments to GetSupernet
type GetSupernetClientResponse ¶
type GetSupernetClientResponse struct { // whether it is permissioned or not IsPermissioned bool // supernet auth information for a permissioned supernet ControlKeys []ids.ShortID Threshold uint32 Locktime uint64 // supernet transformation tx ID for a permissionless supernet SupernetTransformationTxID ids.ID }
GetSupernetClientResponse is the response from calling GetSupernet on the client
type GetSupernetResponse ¶
type GetSupernetResponse struct { // whether it is permissioned or not IsPermissioned bool `json:"isPermissioned"` // supernet auth information for a permissioned supernet ControlKeys []string `json:"controlKeys"` Threshold avajson.Uint32 `json:"threshold"` Locktime avajson.Uint64 `json:"locktime"` // supernet transformation tx ID for a permissionless supernet SupernetTransformationTxID ids.ID `json:"supernetTransformationTxID"` }
GetSupernetResponse is the response from calling GetSupernet
type GetSupernetsArgs ¶
type GetSupernetsArgs struct { // IDs of the supernets to retrieve information about // If omitted, gets all supernets IDs []ids.ID `json:"ids"` }
GetSupernetsArgs are the arguments to GetSupernets
type GetSupernetsResponse ¶
type GetSupernetsResponse struct { // Each element is a supernet that exists // Null if there are no supernets other than the primary network Supernets []APISupernet `json:"supernets"` }
GetSupernetsResponse is the response from calling GetSupernets
type GetTimestampReply ¶
GetTimestampReply is the response from GetTimestamp
type GetTotalStakeArgs ¶
type GetTotalStakeArgs struct { // Supernet we're getting the total stake // If omitted returns Primary network weight SupernetID ids.ID `json:"supernetID"` }
GetTotalStakeArgs are the arguments for calling GetTotalStake
type GetTotalStakeReply ¶
type GetTotalStakeReply struct { // Deprecated: Use Weight instead. Stake avajson.Uint64 `json:"stake"` Weight avajson.Uint64 `json:"weight"` }
GetTotalStakeReply is the response from calling GetTotalStake.
type GetTxStatusArgs ¶
type GetTxStatusResponse ¶
type GetValidatorsAtArgs ¶
type GetValidatorsAtArgs struct { Height avajson.Uint64 `json:"height"` SupernetID ids.ID `json:"supernetID"` }
GetValidatorsAtArgs is the response from GetValidatorsAt
type GetValidatorsAtReply ¶
type GetValidatorsAtReply struct {
Validators map[ids.NodeID]*validators.GetValidatorOutput
}
GetValidatorsAtReply is the response from GetValidatorsAt
func (*GetValidatorsAtReply) MarshalJSON ¶
func (v *GetValidatorsAtReply) MarshalJSON() ([]byte, error)
func (*GetValidatorsAtReply) UnmarshalJSON ¶
func (v *GetValidatorsAtReply) UnmarshalJSON(b []byte) error
type Index ¶
type Index struct { Address string `json:"address"` // The address as a string UTXO string `json:"utxo"` // The UTXO ID as a string }
Index is an address and an associated UTXO. Marks a starting or stopping point when fetching UTXOs. Used for pagination.
type SampleValidatorsArgs ¶
type SampleValidatorsArgs struct { // Number of validators in the sample Size avajson.Uint16 `json:"size"` // ID of supernet to sample validators from // If omitted, defaults to the primary network SupernetID ids.ID `json:"supernetID"` }
SampleValidatorsArgs are the arguments for calling SampleValidators
type SampleValidatorsReply ¶
SampleValidatorsReply are the results from calling Sample
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service defines the API calls that can be made to the platform chain
func (*Service) ExportKey ¶
func (s *Service) ExportKey(_ *http.Request, args *ExportKeyArgs, reply *ExportKeyReply) error
ExportKey returns a private key from the provided user
func (*Service) GetBalance ¶
func (s *Service) GetBalance(_ *http.Request, args *GetBalanceRequest, response *GetBalanceResponse) error
GetBalance gets the balance of an address
func (*Service) GetBlock ¶
func (s *Service) GetBlock(_ *http.Request, args *api.GetBlockArgs, response *api.GetBlockResponse) error
func (*Service) GetBlockByHeight ¶
func (s *Service) GetBlockByHeight(_ *http.Request, args *api.GetBlockByHeightArgs, response *api.GetBlockResponse) error
GetBlockByHeight returns the block at the given height.
func (*Service) GetBlockchainStatus ¶
func (s *Service) GetBlockchainStatus(r *http.Request, args *GetBlockchainStatusArgs, reply *GetBlockchainStatusReply) error
GetBlockchainStatus gets the status of a blockchain with the ID [args.BlockchainID].
func (*Service) GetBlockchains ¶
func (s *Service) GetBlockchains(_ *http.Request, _ *struct{}, response *GetBlockchainsResponse) error
GetBlockchains returns all of the blockchains that exist
func (*Service) GetCurrentSupply ¶
func (s *Service) GetCurrentSupply(r *http.Request, args *GetCurrentSupplyArgs, reply *GetCurrentSupplyReply) error
GetCurrentSupply returns an upper bound on the supply of AVAX in the system
func (*Service) GetCurrentValidators ¶
func (s *Service) GetCurrentValidators(_ *http.Request, args *GetCurrentValidatorsArgs, reply *GetCurrentValidatorsReply) error
GetCurrentValidators returns the current validators. If a single nodeID is provided, full delegators information is also returned. Otherwise only delegators' number and total weight is returned.
func (*Service) GetFeePoolValue ¶
func (s *Service) GetFeePoolValue(_ *http.Request, _ *struct{}, reply *GetFeePoolValueReply) error
GetFeePoolValue returns the current value in the fee pool
func (*Service) GetMinStake ¶
func (s *Service) GetMinStake(_ *http.Request, args *GetMinStakeArgs, reply *GetMinStakeReply) error
GetMinStake returns the minimum staking amount in nAVAX.
func (*Service) GetRewardPoolSupply ¶
func (s *Service) GetRewardPoolSupply(_ *http.Request, args *GetRewardPoolSupplyArgs, reply *GetRewardPoolSupplyReply) error
GetRewardPoolSupply returns an upper bound on the supply of AVAX in the system
func (*Service) GetRewardUTXOs ¶
func (s *Service) GetRewardUTXOs(_ *http.Request, args *api.GetTxArgs, reply *GetRewardUTXOsReply) error
GetRewardUTXOs returns the UTXOs that were rewarded after the provided transaction's staking period ended.
func (*Service) GetStake ¶
func (s *Service) GetStake(_ *http.Request, args *GetStakeArgs, response *GetStakeReply) error
GetStake returns the amount of nAVAX that [args.Addresses] have cumulatively staked on the Primary Network.
This method assumes that each stake output has only owner This method assumes only AVAX can be staked This method only concerns itself with the Primary Network, not supernets TODO: Improve the performance of this method by maintaining this data in a data structure rather than re-calculating it by iterating over stakers
func (*Service) GetStakingAssetID ¶
func (s *Service) GetStakingAssetID(_ *http.Request, args *GetStakingAssetIDArgs, response *GetStakingAssetIDResponse) error
GetStakingAssetID returns the assetID of the token used to stake on the provided supernet
func (*Service) GetSupernet ¶
func (s *Service) GetSupernet(_ *http.Request, args *GetSupernetArgs, response *GetSupernetResponse) error
func (*Service) GetSupernets ¶
func (s *Service) GetSupernets(_ *http.Request, args *GetSupernetsArgs, response *GetSupernetsResponse) error
GetSupernets returns the supernets whose ID are in [args.IDs] The response will include the primary network
func (*Service) GetTimestamp ¶
func (s *Service) GetTimestamp(_ *http.Request, _ *struct{}, reply *GetTimestampReply) error
GetTimestamp returns the current timestamp on chain.
func (*Service) GetTotalStake ¶
func (s *Service) GetTotalStake(_ *http.Request, args *GetTotalStakeArgs, reply *GetTotalStakeReply) error
GetTotalStake returns the total amount staked on the Primary Network
func (*Service) GetTxStatus ¶
func (s *Service) GetTxStatus(_ *http.Request, args *GetTxStatusArgs, response *GetTxStatusResponse) error
GetTxStatus gets a tx's status
func (*Service) GetUTXOs ¶
func (s *Service) GetUTXOs(_ *http.Request, args *api.GetUTXOsArgs, response *api.GetUTXOsReply) error
GetUTXOs returns the UTXOs controlled by the given addresses
func (*Service) GetValidatorsAt ¶
func (s *Service) GetValidatorsAt(r *http.Request, args *GetValidatorsAtArgs, reply *GetValidatorsAtReply) error
GetValidatorsAt returns the weights of the validator set of a provided supernet at the specified height.
func (*Service) ListAddresses ¶
func (s *Service) ListAddresses(_ *http.Request, args *api.UserPass, response *api.JSONAddresses) error
ListAddresses returns the addresses controlled by [args.Username]
func (*Service) SampleValidators ¶
func (s *Service) SampleValidators(_ *http.Request, args *SampleValidatorsArgs, reply *SampleValidatorsReply) error
SampleValidators returns a sampling of the list of current validators
func (*Service) ValidatedBy ¶
func (s *Service) ValidatedBy(r *http.Request, args *ValidatedByArgs, response *ValidatedByResponse) error
ValidatedBy returns the ID of the Supernet that validates [args.BlockchainID]
func (*Service) Validates ¶
func (s *Service) Validates(_ *http.Request, args *ValidatesArgs, response *ValidatesResponse) error
Validates returns the IDs of the blockchains validated by [args.SupernetID]
type VM ¶
type VM struct { config.Config blockbuilder.Builder *network.Network validators.State // contains filtered or unexported fields }
func (*VM) CodecRegistry ¶
func (*VM) ConnectedSupernet ¶
func (*VM) CreateHandlers ¶
CreateHandlers returns a map where: * keys are API endpoint extensions * values are API handlers
func (*VM) GetBlockIDAtHeight ¶
func (*VM) Initialize ¶
func (vm *VM) Initialize( ctx context.Context, chainCtx *snow.Context, db database.Database, genesisBytes []byte, _ []byte, configBytes []byte, toEngine chan<- common.Message, _ []*common.Fx, appSender common.AppSender, ) error
Initialize this blockchain. [vm.ChainManager] and [vm.vdrMgr] must be set before this function is called.
func (*VM) LastAccepted ¶
LastAccepted returns the block most recently accepted
func (*VM) ParseBlock ¶
func (*VM) SetPreference ¶
SetPreference sets the preferred block to be the one with ID [blkID]
type ValidatedByArgs ¶
type ValidatedByArgs struct { // ValidatedBy returns the ID of the Supernet validating the blockchain with this ID BlockchainID ids.ID `json:"blockchainID"` }
ValidatedByArgs is the arguments for calling ValidatedBy
type ValidatedByResponse ¶
type ValidatedByResponse struct { // ID of the Supernet validating the specified blockchain SupernetID ids.ID `json:"supernetID"` }
ValidatedByResponse is the reply from calling ValidatedBy
type ValidatesArgs ¶
ValidatesArgs are the arguments to Validates
type ValidatesResponse ¶
ValidatesResponse is the response from calling Validates
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package block is a generated GoMock package.
|
Package block is a generated GoMock package. |
executor
Package executor is a generated GoMock package.
|
Package executor is a generated GoMock package. |
Package fx is a generated GoMock package.
|
Package fx is a generated GoMock package. |
Package state is a generated GoMock package.
|
Package state is a generated GoMock package. |
Package txs is a generated GoMock package.
|
Package txs is a generated GoMock package. |
mempool
Package mempool is a generated GoMock package.
|
Package mempool is a generated GoMock package. |
Package utxo is a generated GoMock package.
|
Package utxo is a generated GoMock package. |