nameservice

package
v0.0.0-...-c736a29 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 17, 2021 License: AGPL-3.0 Imports: 13 Imported by: 0

README

WNS

Clear Remote WNS

To clear a remote WNS, the following information is required:

The following example will work for https://wns-testnet.dev.wireline.ninja/console.

Create an account on a different machine (e.g. laptop/desktop), using the mnemonic for the remote root account.

$ wnscli keys add root-testnet-dev --recover
# Enter a passphrase for the new account, repeat it when prompted.
# Use the following mnemonic for recovery:
# salad portion potato insect unknown exile lion soft layer evolve flavor hollow emerge celery ankle sponsor easy effort flush furnace life maximum rotate apple

Clear the remote WNS using the following command:

$ wnscli tx nameservice clear --from root-testnet-dev --node tcp://wns-testnet.dev.wireline.ninja:26657
# Enter passphrase when prompted.

Use the GQL playground (https://wns-testnet.dev.wireline.ninja/console) to query and confirm that all records are gone.

Invariant Checking

To turn on invariant checking, pass the inv-check-period flag to the server.

# Check invariants every N (here, N=1) blocks.
$ wnsd start --gql-server --gql-playground --inv-check-period=1

Also see https://github.com/cosmos/cosmos-sdk/blob/master/docs/building-modules/invariants.md.

Export State

  • Halt the chain.
  • Run wnsd export > state.json.
  • state.json contains the state of all modules (e.g. records and bonds).

Import State

  • Reset the chain state using wnsd unsafe-reset-all.
  • Replace ~/.wire/wnsd/config/genesis.json with a previously exported state (e.g. state.json).
  • Start the chain.

Denominations/Units

  • wire // 1 (base denom unit).
  • mwire // 10^-3 (milli).
  • uwire // 10^-6 (micro).

Also see x/bond/internal/types/init.go.

Module Accounts

  • bond: Module account for bonds. Balance reflects current total bonded amount.
  • record_rent: Module account for record rent collection. Distribution of proceeds from rent collection (to be implemented) will reduce this amount.
$ wnscli query bond balance
{
  "bond": [
    {
      "denom": "uwire",
      "amount": "5993000000"
    }
  ],
  "record_rent": [
    {
      "denom": "uwire",
      "amount": "7000000"
    }
  ]
}

Documentation

Index

Constants

View Source
const (
	ModuleName                     = types.ModuleName
	RecordRentModuleAccountName    = types.RecordRentModuleAccountName
	AuthorityRentModuleAccountName = types.AuthorityRentModuleAccountName
	RouterKey                      = types.RouterKey
	StoreKey                       = types.StoreKey
)

Variables

View Source
var (
	DefaultParamspace = types.DefaultParamspace
	NewKeeper         = keeper.NewKeeper
	NewRecordKeeper   = keeper.NewRecordKeeper
	NewQuerier        = keeper.NewQuerier
	ModuleCdc         = types.ModuleCdc
	RegisterCodec     = types.RegisterCodec

	RegisterInvariants = keeper.RegisterInvariants

	PrefixCIDToRecordIndex         = keeper.PrefixCIDToRecordIndex
	PrefixNameAuthorityRecordIndex = keeper.PrefixNameAuthorityRecordIndex
	PrefixWRNToNameRecordIndex     = keeper.PrefixWRNToNameRecordIndex

	GetBlockChangesetIndexKey = keeper.GetBlockChangesetIndexKey
	GetRecordIndexKey         = keeper.GetRecordIndexKey
	GetNameAuthorityIndexKey  = keeper.GetNameAuthorityIndexKey
	GetNameRecordIndexKey     = keeper.GetNameRecordIndexKey

	HasRecord        = keeper.HasRecord
	GetRecord        = keeper.GetRecord
	ResolveWRN       = keeper.ResolveWRN
	GetNameAuthority = keeper.GetNameAuthority
	GetNameRecord    = keeper.GetNameRecord
	MatchRecords     = keeper.MatchRecords
	KeySyncStatus    = keeper.KeySyncStatus

	SetNameRecord             = keeper.SetNameRecord
	AddRecordToNameMapping    = keeper.AddRecordToNameMapping
	RemoveRecordToNameMapping = keeper.RemoveRecordToNameMapping
)

Functions

func EndBlocker

func EndBlocker(ctx sdk.Context, k keeper.Keeper) []abci.ValidatorUpdate

EndBlocker is called every block, returns updated validator set.

func InitGenesis

func InitGenesis(ctx sdk.Context, keeper Keeper, data GenesisState) []abci.ValidatorUpdate

func NewHandler

func NewHandler(keeper Keeper) sdk.Handler

NewHandler returns a handler for "nameservice" type messages.

func ValidateGenesis

func ValidateGenesis(data GenesisState) error

Types

type AppModule

type AppModule struct {
	AppModuleBasic
	// contains filtered or unexported fields
}

func NewAppModule

func NewAppModule(k Keeper) AppModule

NewAppModule creates a new AppModule Object

func (AppModule) BeginBlock

func (am AppModule) BeginBlock(_ sdk.Context, _ abci.RequestBeginBlock)

func (AppModule) EndBlock

func (AppModule) ExportGenesis

func (am AppModule) ExportGenesis(ctx sdk.Context) json.RawMessage

func (AppModule) InitGenesis

func (am AppModule) InitGenesis(ctx sdk.Context, data json.RawMessage) []abci.ValidatorUpdate

func (AppModule) Name

func (AppModule) Name() string

func (AppModule) NewHandler

func (am AppModule) NewHandler() sdk.Handler

func (AppModule) NewQuerierHandler

func (am AppModule) NewQuerierHandler() sdk.Querier

func (AppModule) QuerierRoute

func (am AppModule) QuerierRoute() string

func (AppModule) RegisterInvariants

func (am AppModule) RegisterInvariants(ir sdk.InvariantRegistry)

func (AppModule) Route

func (am AppModule) Route() string

type AppModuleBasic

type AppModuleBasic struct{}

app module Basics object

func (AppModuleBasic) DefaultGenesis

func (AppModuleBasic) DefaultGenesis() json.RawMessage

func (AppModuleBasic) GetQueryCmd

func (AppModuleBasic) GetQueryCmd(cdc *codec.Codec) *cobra.Command

Get the root query command of this module

func (AppModuleBasic) GetTxCmd

func (AppModuleBasic) GetTxCmd(cdc *codec.Codec) *cobra.Command

Get the root tx command of this module

func (AppModuleBasic) Name

func (AppModuleBasic) Name() string

func (AppModuleBasic) RegisterCodec

func (AppModuleBasic) RegisterCodec(cdc *codec.Codec)

func (AppModuleBasic) RegisterRESTRoutes

func (AppModuleBasic) RegisterRESTRoutes(ctx context.CLIContext, rtr *mux.Router)

Register rest routes

func (AppModuleBasic) ValidateGenesis

func (AppModuleBasic) ValidateGenesis(bz json.RawMessage) error

Validation check of the Genesis

type AuthorityEntry

type AuthorityEntry struct {
	Name  string              `json:"name" yaml:"name"`
	Entry types.NameAuthority `json:"record" yaml:"record"`
}

type BlockChangeset

type BlockChangeset = types.BlockChangeset

type GenesisState

type GenesisState struct {
	Params      types.Params      `json:"params" yaml:"params"`
	Records     []types.RecordObj `json:"records" yaml:"records"`
	Authorities []AuthorityEntry  `json:"authorities" yaml:"authorities"`
	Names       []NameEntry       `json:"names" yaml:"names"`
}

func DefaultGenesisState

func DefaultGenesisState() GenesisState

func ExportGenesis

func ExportGenesis(ctx sdk.Context, keeper Keeper) GenesisState

func NewGenesisState

func NewGenesisState(params types.Params, records []types.RecordObj, authorities []AuthorityEntry, names []NameEntry) GenesisState

type ID

type ID = types.ID

type Keeper

type Keeper = keeper.Keeper

type MsgSetRecord

type MsgSetRecord = types.MsgSetRecord

type NameAuthority

type NameAuthority = types.NameAuthority

type NameEntry

type NameEntry struct {
	Name  string           `json:"name" yaml:"name"`
	Entry types.NameRecord `json:"record" yaml:"record"`
}

type NameRecord

type NameRecord = types.NameRecord

type NameRecordEntry

type NameRecordEntry = types.NameRecordEntry

type Record

type Record = types.Record

type RecordKeeper

type RecordKeeper = keeper.RecordKeeper

type RecordObj

type RecordObj = types.RecordObj

Directories

Path Synopsis
client
cli
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL