Documentation
¶
Index ¶
- type Config
- type ContractEventObserver
- type Monitor
- type Provider
- func (p *Provider) BatchChargeAppBills(opts *bind.TransactOpts, app common.Address, ...) (*types.Transaction, error)
- func (p *Provider) FlushApiWeightTokenPendingConfig(opts *bind.TransactOpts, awtAddr common.Address) (*types.Transaction, error)
- func (p *Provider) GetApiWeightTokenContract(awtAddr common.Address) (*contract.ApiWeightToken, error)
- func (p *Provider) GetApiWeightTokenPendingSeconds(callOpts *bind.CallOpts, awtAddr common.Address) (*big.Int, error)
- func (p *Provider) GetApiWeightTokenResources(callOpts *bind.CallOpts, awtAddr common.Address) (map[string]contract.IAppConfigConfigEntry, error)
- func (p *Provider) GetAppAccountBalance(callOpts *bind.CallOpts, app, address common.Address) (*big.Int, error)
- func (p *Provider) GetAppAccountBalanceAndFrozenStatus(callOpts *bind.CallOpts, app, address common.Address) (*big.Int, int64, error)
- func (p *Provider) GetAppAccountFrozenStatus(callOpts *bind.CallOpts, app, address common.Address) (int64, error)
- func (p *Provider) GetAppApiWeightToken(callOpts *bind.CallOpts, app common.Address) (common.Address, error)
- func (p *Provider) GetAppContract(appAddr common.Address) (*contract.App, error)
- func (p *Provider) GetAppVipCoin(callOpts *bind.CallOpts, app common.Address) (common.Address, error)
- func (p *Provider) GetCardShopContract(csAddr common.Address) (*contract.CardShop, error)
- func (p *Provider) GetCardTrackerContract(ctAddr common.Address) (*contract.CardTracker, error)
- func (p *Provider) IterateApiWeightTokenResources(callOpts *bind.CallOpts, awtAddr common.Address, ...) error
- func (p *Provider) IterateTrackedApps(callOpts *bind.CallOpts, iterator func(common.Address) error) error
- func (p *Provider) ListTrackedApps(callOpts *bind.CallOpts) (apps, apiWeightTokens, vipCoins []common.Address, err error)
- func (p *Provider) OperatorAddress() common.Address
- func (p *Provider) ReferenceBlockNumber() int64
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { AppRegistryContractAddr common.Address OwnerAddr *common.Address OperatorPrivateKey string }
func MustNewConfigFromViper ¶
func MustNewConfigFromViper() *Config
type ContractEventObserver ¶
type ContractEventObserver interface { // APP registry OnAppCreated(event *contract.AppRegistryCreated, rawlog *types.Log) error // App OnDeposit(event *contract.AppDeposit, rawlog *types.Log) error OnWithdraw(event *contract.AppWithdraw, rawlog *types.Log) error OnFrozen(event *contract.AppFrozen, rawlog *types.Log) error // ApiWeightToken OnResourceChanged(event *contract.ApiWeightTokenResourceChanged, rawlog *types.Log) error // VipCoin OnTransfer(event *contract.VipCoinTransferSingle, rawlog *types.Log) error // confirmation StatusConfirmQueue() <-chan [2]common.Address // [app, addr] OnConfirmStatus(app, addr common.Address, balance *big.Int, frozen, block int64) error // reorg revert OnReorgRevert(revertToBlock int64) error }
type Monitor ¶
type Monitor struct {
// contains filtered or unexported fields
}
Monitor sync blockchain event logs to monitor contract events.
func MustNewMonitor ¶
func MustNewMonitor(config *Config, provider *Provider, eventObserver ContractEventObserver) *Monitor
type Provider ¶
type Provider struct { *client.RpcEthClient Config // contains filtered or unexported fields }
Provider provides blockchain operations.
func MustNewProvider ¶
func (*Provider) BatchChargeAppBills ¶
func (p *Provider) BatchChargeAppBills( opts *bind.TransactOpts, app common.Address, requests []contract.IAppConfigChargeRequest) (*types.Transaction, error)
BatchChargeAppBills batch charges APP bills.
func (*Provider) FlushApiWeightTokenPendingConfig ¶
func (p *Provider) FlushApiWeightTokenPendingConfig(opts *bind.TransactOpts, awtAddr common.Address) (*types.Transaction, error)
FlushApiWeightTokenPendingConfig flushes `ApiWeightToken` pending configurations.
func (*Provider) GetApiWeightTokenContract ¶
func (p *Provider) GetApiWeightTokenContract(awtAddr common.Address) (*contract.ApiWeightToken, error)
GetApiWeightTokenContract gets `ApiWeightToken` contract stub.
func (*Provider) GetApiWeightTokenPendingSeconds ¶
func (p *Provider) GetApiWeightTokenPendingSeconds(callOpts *bind.CallOpts, awtAddr common.Address) (*big.Int, error)
GetApiWeightTokenPendingSeconds gets pending delay seconds for `ApiWeightToken` resources.
func (*Provider) GetApiWeightTokenResources ¶
func (p *Provider) GetApiWeightTokenResources( callOpts *bind.CallOpts, awtAddr common.Address) (map[string]contract.IAppConfigConfigEntry, error)
GetApiWeightTokenResources gets `ApiWeightToken` config resources.
func (*Provider) GetAppAccountBalance ¶
func (p *Provider) GetAppAccountBalance( callOpts *bind.CallOpts, app, address common.Address) (*big.Int, error)
GetAppBalance gets APP account balance for specific address.
func (*Provider) GetAppAccountBalanceAndFrozenStatus ¶
func (p *Provider) GetAppAccountBalanceAndFrozenStatus( callOpts *bind.CallOpts, app, address common.Address) (*big.Int, int64, error)
GetAppAccountBalanceAndFrozenStatus combo-gets APP account balance and frozen status.
func (*Provider) GetAppAccountFrozenStatus ¶
func (p *Provider) GetAppAccountFrozenStatus( callOpts *bind.CallOpts, app, address common.Address) (int64, error)
GetAppAccountFrozenStatus gets APP account frozen status for specific address.
func (*Provider) GetAppApiWeightToken ¶
func (p *Provider) GetAppApiWeightToken( callOpts *bind.CallOpts, app common.Address) (common.Address, error)
GetAppApiWeightToken gets `ApiWeightToken` for specified app.
func (*Provider) GetAppContract ¶
GetAppContract gets `APP` contract stub.
func (*Provider) GetAppVipCoin ¶
func (p *Provider) GetAppVipCoin( callOpts *bind.CallOpts, app common.Address) (common.Address, error)
GetAppVipCoin gets `VipCoin` for specified app.
func (*Provider) GetCardShopContract ¶
GetCardShopContract gets `CardShop` contract stub.
func (*Provider) GetCardTrackerContract ¶
GetCardTrackerContract gets `CardTracker` contract stub.
func (*Provider) IterateApiWeightTokenResources ¶
func (p *Provider) IterateApiWeightTokenResources( callOpts *bind.CallOpts, awtAddr common.Address, iterator func(confEntry contract.IAppConfigConfigEntry) (bool, error), ) error
IterateApiWeightTokenResources iterates all resources under specified `ApiWeightToken`
func (*Provider) IterateTrackedApps ¶
func (p *Provider) IterateTrackedApps( callOpts *bind.CallOpts, iterator func(common.Address) error) error
IterateTrackedApps iterates all tracked APP contracts.
func (*Provider) ListTrackedApps ¶
func (p *Provider) ListTrackedApps(callOpts *bind.CallOpts) (apps, apiWeightTokens, vipCoins []common.Address, err error)
ListTrackedApps lists all tracked APP contracts.
func (*Provider) OperatorAddress ¶
OperatorAddress returns the operator address.
func (*Provider) ReferenceBlockNumber ¶
ReferenceBlockNumber returns reference block number.