Skip to content

Commit

Permalink
Implement farm module (#2623)
Browse files Browse the repository at this point in the history
* add query params api

* Revert "Update mainnet version (#2618)"

This reverts commit 7cf7584.

* revert

* upgrade irismod version

* fix some bugs

* revert

* refund shoule be in endblocker not begin blocker

* revert version

* revert version

* upgrade irismod version

* update irismod version

* fix compling

* upgrade irismod

* upgrade irismod

* merge from master

* upgrade irismod

* add farm api and swagger doc

Co-authored-by: chengwenxi <vincent.ch.cn@gmail.com>
  • Loading branch information
Zhiqiang Zhang and chengwenxi authored Jun 28, 2021
1 parent 17ddc54 commit 040ad6c
Show file tree
Hide file tree
Showing 11 changed files with 1,650 additions and 10 deletions.
27 changes: 24 additions & 3 deletions app/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,10 @@ import (
"github.com/irisnet/irishub/modules/mint"
mintkeeper "github.com/irisnet/irishub/modules/mint/keeper"
minttypes "github.com/irisnet/irishub/modules/mint/types"

"github.com/irisnet/irismod/modules/farm"
farmkeeper "github.com/irisnet/irismod/modules/farm/keeper"
farmtypes "github.com/irisnet/irismod/modules/farm/types"
)

const appName = "IrisApp"
Expand Down Expand Up @@ -160,6 +164,7 @@ var (
service.AppModuleBasic{},
oracle.AppModuleBasic{},
random.AppModuleBasic{},
farm.AppModuleBasic{},
)

// module account permissions
Expand All @@ -177,6 +182,8 @@ var (
servicetypes.DepositAccName: {authtypes.Burner},
servicetypes.RequestAccName: nil,
servicetypes.FeeCollectorName: {authtypes.Burner},
farmtypes.ModuleName: nil,
farmtypes.RewardCollector: nil,
}

nativeToken tokentypes.Token
Expand Down Expand Up @@ -233,6 +240,7 @@ type IrisApp struct {
serviceKeeper servicekeeper.Keeper
oracleKeeper oraclekeeper.Keeper
randomKeeper randomkeeper.Keeper
farmkeeper farmkeeper.Keeper

// the module manager
mm *module.Manager
Expand Down Expand Up @@ -302,6 +310,7 @@ func NewIrisApp(
evidencetypes.StoreKey, ibctransfertypes.StoreKey, capabilitytypes.StoreKey,
guardiantypes.StoreKey, tokentypes.StoreKey, nfttypes.StoreKey, htlctypes.StoreKey, recordtypes.StoreKey,
coinswaptypes.StoreKey, servicetypes.StoreKey, oracletypes.StoreKey, randomtypes.StoreKey,
farmtypes.StoreKey,
)
tkeys := sdk.NewTransientStoreKeys(paramstypes.TStoreKey)
memKeys := sdk.NewMemoryStoreKeys(capabilitytypes.MemStoreKey)
Expand Down Expand Up @@ -451,6 +460,15 @@ func NewIrisApp(
app.serviceKeeper,
)

app.farmkeeper = farmkeeper.NewKeeper(appCodec,
keys[farmtypes.StoreKey],
app.bankKeeper,
app.accountKeeper,
app.coinswapKeeper.ValidatePool,
app.GetSubspace(farmtypes.ModuleName),
authtypes.FeeCollectorName,
)

/**** Module Options ****/
var skipGenesisInvariants = false
opt := appOpts.Get(crisis.FlagSkipGenesisInvariants)
Expand Down Expand Up @@ -489,6 +507,7 @@ func NewIrisApp(
service.NewAppModule(appCodec, app.serviceKeeper, app.accountKeeper, app.bankKeeper),
oracle.NewAppModule(appCodec, app.oracleKeeper),
random.NewAppModule(appCodec, app.randomKeeper, app.accountKeeper, app.bankKeeper),
farm.NewAppModule(appCodec, app.farmkeeper, app.accountKeeper, app.bankKeeper),
)

// During begin block slashing happens after distr.BeginBlocker so that
Expand All @@ -498,11 +517,11 @@ func NewIrisApp(
app.mm.SetOrderBeginBlockers(
upgradetypes.ModuleName, minttypes.ModuleName, distrtypes.ModuleName,
slashingtypes.ModuleName, evidencetypes.ModuleName, stakingtypes.ModuleName,
ibchost.ModuleName, htlctypes.ModuleName, randomtypes.ModuleName,
ibchost.ModuleName, htlctypes.ModuleName, randomtypes.ModuleName, farmtypes.ModuleName,
)
app.mm.SetOrderEndBlockers(
crisistypes.ModuleName, govtypes.ModuleName, stakingtypes.ModuleName,
servicetypes.ModuleName,
servicetypes.ModuleName, farmtypes.ModuleName,
)

// NOTE: The genutils module must occur after staking so that pools are
Expand All @@ -515,7 +534,7 @@ func NewIrisApp(
slashingtypes.ModuleName, govtypes.ModuleName, minttypes.ModuleName, crisistypes.ModuleName,
ibchost.ModuleName, genutiltypes.ModuleName, evidencetypes.ModuleName, ibctransfertypes.ModuleName,
guardiantypes.ModuleName, tokentypes.ModuleName, nfttypes.ModuleName, htlctypes.ModuleName, recordtypes.ModuleName,
coinswaptypes.ModuleName, servicetypes.ModuleName, oracletypes.ModuleName, randomtypes.ModuleName,
coinswaptypes.ModuleName, servicetypes.ModuleName, oracletypes.ModuleName, randomtypes.ModuleName, farmtypes.ModuleName,
)

app.mm.RegisterInvariants(&app.crisisKeeper)
Expand Down Expand Up @@ -548,6 +567,7 @@ func NewIrisApp(
service.NewAppModule(appCodec, app.serviceKeeper, app.accountKeeper, app.bankKeeper),
oracle.NewAppModule(appCodec, app.oracleKeeper),
random.NewAppModule(appCodec, app.randomKeeper, app.accountKeeper, app.bankKeeper),
farm.NewAppModule(appCodec, app.farmkeeper, app.accountKeeper, app.bankKeeper),
)

app.sm.RegisterStoreDecoders()
Expand Down Expand Up @@ -794,6 +814,7 @@ func initParamsKeeper(appCodec codec.BinaryMarshaler, legacyAmino *codec.LegacyA
paramsKeeper.Subspace(coinswaptypes.ModuleName)
paramsKeeper.Subspace(servicetypes.ModuleName)
paramsKeeper.Subspace(ibchost.ModuleName)
paramsKeeper.Subspace(farmtypes.ModuleName)

return paramsKeeper
}
Loading

0 comments on commit 040ad6c

Please sign in to comment.