@@ -45,6 +45,10 @@ import (
45
45
tmos "github.com/tendermint/tendermint/libs/os"
46
46
dbm "github.com/tendermint/tm-db"
47
47
48
+ ftf "github.com/circlefin/noble-fiattokenfactory/x/fiattokenfactory"
49
+ ftfkeeper "github.com/circlefin/noble-fiattokenfactory/x/fiattokenfactory/keeper"
50
+ ftftypes "github.com/circlefin/noble-fiattokenfactory/x/fiattokenfactory/types"
51
+
48
52
"github.com/noble-assets/halo/x/halo"
49
53
halokeeper "github.com/noble-assets/halo/x/halo/keeper"
50
54
halotypes "github.com/noble-assets/halo/x/halo/types"
@@ -59,13 +63,15 @@ var (
59
63
genutil.AppModuleBasic {},
60
64
params.AppModuleBasic {},
61
65
staking.AppModuleBasic {},
66
+ ftf.AppModuleBasic {},
62
67
halo.AppModuleBasic {},
63
68
)
64
69
65
70
permissions = map [string ][]string {
66
71
authtypes .FeeCollectorName : nil ,
67
72
stakingtypes .BondedPoolName : {authtypes .Burner , authtypes .Staking },
68
73
stakingtypes .NotBondedPoolName : {authtypes .Burner , authtypes .Staking },
74
+ ftftypes .ModuleName : {authtypes .Burner , authtypes .Minter },
69
75
halotypes .ModuleName : {authtypes .Burner , authtypes .Minter },
70
76
}
71
77
)
@@ -95,6 +101,7 @@ type SimApp struct {
95
101
ParamsKeeper paramskeeper.Keeper
96
102
StakingKeeper stakingkeeper.Keeper
97
103
// Custom Modules
104
+ FTFKeeper * ftfkeeper.Keeper
98
105
HaloKeeper * halokeeper.Keeper
99
106
}
100
107
@@ -128,7 +135,7 @@ func NewSimApp(
128
135
129
136
keys := sdk .NewKVStoreKeys (
130
137
authtypes .StoreKey , banktypes .StoreKey , paramstypes .StoreKey , stakingtypes .StoreKey ,
131
- halotypes .ModuleName ,
138
+ ftftypes . StoreKey , halotypes .ModuleName ,
132
139
)
133
140
tkeys := sdk .NewTransientStoreKeys (paramstypes .TStoreKey )
134
141
@@ -154,7 +161,7 @@ func NewSimApp(
154
161
)
155
162
156
163
app .HaloKeeper = halokeeper .NewKeeper (
157
- appCodec , keys [halotypes .ModuleName ], "uusyc" , "uusdc" , app .AccountKeeper , nil , interfaceRegistry ,
164
+ appCodec , keys [halotypes .ModuleName ], "uusyc" , "uusdc" , app .AccountKeeper , nil , nil , interfaceRegistry ,
158
165
)
159
166
app .BankKeeper = bankkeeper .NewBaseKeeper (
160
167
appCodec , keys [banktypes .StoreKey ], app .AccountKeeper , app .GetSubspace (banktypes .ModuleName ), app .ModuleAccountAddrs (),
@@ -165,6 +172,11 @@ func NewSimApp(
165
172
appCodec , keys [stakingtypes .StoreKey ], app .AccountKeeper , app .BankKeeper , app .GetSubspace (stakingtypes .ModuleName ),
166
173
)
167
174
175
+ app .FTFKeeper = ftfkeeper .NewKeeper (
176
+ appCodec , keys [ftftypes .StoreKey ], app .GetSubspace (ftftypes .ModuleName ), app .BankKeeper ,
177
+ )
178
+ app .HaloKeeper .SetFTFKeeper (app .FTFKeeper )
179
+
168
180
app .mm = module .NewManager (
169
181
auth .NewAppModule (appCodec , app .AccountKeeper , nil ),
170
182
bank .NewAppModule (appCodec , app .BankKeeper .(bankkeeper.BaseKeeper ), app .AccountKeeper ),
@@ -174,20 +186,23 @@ func NewSimApp(
174
186
),
175
187
params .NewAppModule (app .ParamsKeeper ),
176
188
staking .NewAppModule (appCodec , app .StakingKeeper , app .AccountKeeper , app .BankKeeper ),
189
+ ftf .NewAppModule (appCodec , app .FTFKeeper , app .AccountKeeper , app .BankKeeper ),
177
190
halo .NewAppModule (app .HaloKeeper ),
178
191
)
179
192
180
193
app .mm .SetOrderBeginBlockers (
181
194
stakingtypes .ModuleName , authtypes .ModuleName , banktypes .ModuleName , genutiltypes .ModuleName , paramstypes .ModuleName ,
182
- halotypes .ModuleName ,
195
+ ftftypes . ModuleName , halotypes .ModuleName ,
183
196
)
184
197
app .mm .SetOrderEndBlockers (
185
198
stakingtypes .ModuleName , authtypes .ModuleName , banktypes .ModuleName , genutiltypes .ModuleName , paramstypes .ModuleName ,
186
- halotypes .ModuleName ,
199
+ ftftypes . ModuleName , halotypes .ModuleName ,
187
200
)
201
+ // NOTE: FiatTokenFactory has to be initialized before x/genutils, so that
202
+ // the Halo send restrictions can execute on the gentxs.
188
203
app .mm .SetOrderInitGenesis (
189
- authtypes .ModuleName , banktypes .ModuleName , stakingtypes .ModuleName , genutiltypes .ModuleName , paramstypes .ModuleName ,
190
- halotypes .ModuleName ,
204
+ authtypes .ModuleName , banktypes .ModuleName , stakingtypes .ModuleName , ftftypes .ModuleName , genutiltypes .ModuleName ,
205
+ paramstypes . ModuleName , halotypes .ModuleName ,
191
206
)
192
207
193
208
app .mm .RegisterRoutes (app .Router (), app .QueryRouter (), encodingConfig .Amino )
@@ -295,6 +310,7 @@ func initParamsKeeper(appCodec codec.BinaryCodec, legacyAmino *codec.LegacyAmino
295
310
paramsKeeper .Subspace (authtypes .ModuleName )
296
311
paramsKeeper .Subspace (banktypes .ModuleName )
297
312
paramsKeeper .Subspace (stakingtypes .ModuleName )
313
+ paramsKeeper .Subspace (ftftypes .ModuleName )
298
314
299
315
return paramsKeeper
300
316
}
0 commit comments