* Update docs/sdk/clients.md * organize ADR directory like tendermint * docs: move spec-proposals into spec/ * remove lotion, moved to website repo * move getting-started to cosmos-hub, and voyager to website * docs: move lite/ into clients/lite/ * move introduction/ content to website repo * move resources/ content to website repo * mv sdk/clients.md to clients/clients.md * mv validators to cosmos-hub/validators * move deprecated sdk/ content to _attic * sdk/modules.md is duplicate with modules/README.md * consolidate remianing sdk/ files into a single sdk.md * move examples/ to docs/examples/ * mv docs/cosmos-hub to docs/gaia * Add keys/accounts section to localnet docs
57 lines
1.4 KiB
Go
57 lines
1.4 KiB
Go
package cool
|
|
|
|
import (
|
|
sdk "github.com/cosmos/cosmos-sdk/types"
|
|
"github.com/cosmos/cosmos-sdk/x/bank"
|
|
)
|
|
|
|
// Keeper - handlers sets/gets of custom variables for your module
|
|
type Keeper struct {
|
|
ck bank.Keeper
|
|
|
|
storeKey sdk.StoreKey // The (unexposed) key used to access the store from the Context.
|
|
|
|
codespace sdk.CodespaceType
|
|
}
|
|
|
|
// NewKeeper - Returns the Keeper
|
|
func NewKeeper(key sdk.StoreKey, bankKeeper bank.Keeper, codespace sdk.CodespaceType) Keeper {
|
|
return Keeper{bankKeeper, key, codespace}
|
|
}
|
|
|
|
// Key to knowing the trend on the streets!
|
|
var trendKey = []byte("TrendKey")
|
|
|
|
// GetTrend - returns the current cool trend
|
|
func (k Keeper) GetTrend(ctx sdk.Context) string {
|
|
store := ctx.KVStore(k.storeKey)
|
|
bz := store.Get(trendKey)
|
|
return string(bz)
|
|
}
|
|
|
|
// Implements sdk.AccountKeeper.
|
|
func (k Keeper) setTrend(ctx sdk.Context, newTrend string) {
|
|
store := ctx.KVStore(k.storeKey)
|
|
store.Set(trendKey, []byte(newTrend))
|
|
}
|
|
|
|
// CheckTrend - Returns true or false based on whether guessedTrend is currently cool or not
|
|
func (k Keeper) CheckTrend(ctx sdk.Context, guessedTrend string) bool {
|
|
if guessedTrend == k.GetTrend(ctx) {
|
|
return true
|
|
}
|
|
return false
|
|
}
|
|
|
|
// InitGenesis - store the genesis trend
|
|
func InitGenesis(ctx sdk.Context, k Keeper, data Genesis) error {
|
|
k.setTrend(ctx, data.Trend)
|
|
return nil
|
|
}
|
|
|
|
// ExportGenesis - output the genesis trend
|
|
func ExportGenesis(ctx sdk.Context, k Keeper) Genesis {
|
|
trend := k.GetTrend(ctx)
|
|
return Genesis{trend}
|
|
}
|