oracle

package
v0.0.4 Latest Latest
Warning

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

Go to latest
Published: Dec 27, 2018 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultCodespace sdk.CodespaceType = "ORACLE"

	CodeNotValidator sdk.CodeType = 1
	CodeUnknownDenom sdk.CodeType = 2
)

Oracle errors reserve 1101-1199

View Source
const (
	// default paramspace for params keeper
	DefaultParamspace = "oracle"
)
View Source
const (
	OracleDecPrec = 2
)

Variables

View Source
var (
	PrefixVote          = []byte{0x01}
	PrefixTargetPrice   = []byte{0x02}
	PrefixObservedPrice = []byte{0x03}
	KeyWhitelist        = []byte{0x04}

	ParamStoreKeyParams = []byte("params")
)

nolint

Functions

func EndBlocker

func EndBlocker(ctx sdk.Context, k Keeper) (resTags sdk.Tags)

EndBlocker is called at the end of every block

func ErrNotValidator

func ErrNotValidator(codespace sdk.CodespaceType, address sdk.AccAddress) sdk.Error

ErrNotValidator called when the signer of a Msg is not a validator

func ErrUnknownDenomination added in v0.0.4

func ErrUnknownDenomination(codespace sdk.CodespaceType, denom string) sdk.Error

ErrUnknownDenomination called when the signer of a Msg is not a validator

func GetObservedPriceKey added in v0.0.4

func GetObservedPriceKey(denom string) []byte

GetObservedPriceKey is in format of PrefixObservedPrice||denom

func GetTargetPriceKey added in v0.0.4

func GetTargetPriceKey(denom string) []byte

GetTargetPriceKey is in format of PrefixTargetPrice||denom

func GetVoteKey

func GetVoteKey(denom string, voter sdk.AccAddress) []byte

GetVoteKey Key is in format of PrefixVote||denom||voter.AccAddress

func GetVotePrefix

func GetVotePrefix(denom string) []byte

GetVotePrefix is in format of prefix||denom

func InitGenesis added in v0.0.4

func InitGenesis(ctx sdk.Context, keeper Keeper, data GenesisState)

new oracle genesis

func NewHandler

func NewHandler(k Keeper) sdk.Handler

NewHandler returns a handler for "oracle" type messages.

func ParamTypeTable added in v0.0.4

func ParamTypeTable() params.TypeTable

ParamTable for oracle module

func ValidateGenesis added in v0.0.4

func ValidateGenesis(data GenesisState) error

ValidateGenesis validates the provided oracle genesis state to ensure the expected invariants holds. (i.e. params in correct bounds, no duplicate validators)

Types

type GenesisState added in v0.0.4

type GenesisState struct {
	Params Params `json:"params"` // inflation params
}

GenesisState - all distribution state that must be provided at genesis

func DefaultGenesisState added in v0.0.4

func DefaultGenesisState() GenesisState

get raw genesis raw message for testing

func ExportGenesis added in v0.0.4

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

ExportGenesis returns a GenesisState for a given context and keeper. The GenesisState will contain the pool, and validator/delegator distribution info's

func NewGenesisState added in v0.0.4

func NewGenesisState(params Params) GenesisState

type Keeper

type Keeper struct {
	// contains filtered or unexported fields
}

Keeper of the oracle store

func NewKeeper

func NewKeeper(key sdk.StoreKey, cdc *codec.Codec, tk treasury.Keeper, valset sdk.ValidatorSet, paramspace params.Subspace) Keeper

NewKeeper constructs a new keeper

func (Keeper) GetParams added in v0.0.4

func (k Keeper) GetParams(ctx sdk.Context) Params

GetParams get oralce params from the global param store

func (Keeper) GetPriceObserved added in v0.0.4

func (keeper Keeper) GetPriceObserved(ctx sdk.Context, denom string) sdk.Dec

func (Keeper) GetPriceTarget added in v0.0.4

func (keeper Keeper) GetPriceTarget(ctx sdk.Context, denom string) sdk.Dec

func (Keeper) SetParams added in v0.0.4

func (k Keeper) SetParams(ctx sdk.Context, params Params)

SetParams set oracle params from the global param store

type Params added in v0.0.4

type Params struct {
	Whitelist     []string `json:"whitelist"`      // type of coin to mint
	VotePeriod    sdk.Int  `json:"vote_period"`    // maximum annual change in inflation rate
	VoteThreshold sdk.Dec  `json:"vote_threshold"` // maximum inflation rate
}

Params oracle parameters

func DefaultParams added in v0.0.4

func DefaultParams() Params

DefaultParams creates default oracle module parameters

func NewParams added in v0.0.4

func NewParams(whitelist []string, votePeriod sdk.Int, voteThreshold sdk.Dec) Params

NewParams creates a new param instance

type PriceFeedMsg

type PriceFeedMsg struct {
	Denom         string
	TargetPrice   sdk.Dec // in Luna
	ObservedPrice sdk.Dec // in Luna
	Feeder        sdk.AccAddress
}

PriceFeedMsg - struct for voting on payloads. Note that the Price is denominated in Luna. All validators must vote on Terra prices.

func NewPriceFeedMsg

func NewPriceFeedMsg(denom string, targetPrice, observedPrice sdk.Dec, feederAddress sdk.AccAddress) PriceFeedMsg

NewPriceFeedMsg creates a PriceFeedMsg instance

func (PriceFeedMsg) GetSignBytes

func (msg PriceFeedMsg) GetSignBytes() []byte

GetSignBytes implements sdk.Msg

func (PriceFeedMsg) GetSigners

func (msg PriceFeedMsg) GetSigners() []sdk.AccAddress

GetSigners implements sdk.Msg

func (PriceFeedMsg) Route

func (msg PriceFeedMsg) Route() string

Route Implements Msg

func (PriceFeedMsg) String

func (msg PriceFeedMsg) String() string

String Implements sdk.Msg

func (PriceFeedMsg) Type

func (msg PriceFeedMsg) Type() string

Type implements sdk.Msg

func (PriceFeedMsg) ValidateBasic

func (msg PriceFeedMsg) ValidateBasic() sdk.Error

ValidateBasic Implements sdk.Msg

type PriceVote

type PriceVote struct {
	FeedMsg PriceFeedMsg
	Power   sdk.Dec
}

PriceVote - struct to store a validator's vote on the price

func NewPriceVote

func NewPriceVote(feedMsg PriceFeedMsg, power sdk.Dec) PriceVote

NewPriceVote creates a PriceVote instance

Directories

Path Synopsis
cli

Jump to

Keyboard shortcuts

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