@@ -9,7 +9,10 @@ import (
99 "google.golang.org/grpc"
1010
1111 "cosmossdk.io/core/appmodule"
12+ appmodulev2 "cosmossdk.io/core/appmodule/v2"
1213 "cosmossdk.io/core/registry"
14+ "cosmossdk.io/core/transaction"
15+ "cosmossdk.io/x/circuit/ante"
1316 "cosmossdk.io/x/circuit/keeper"
1417 "cosmossdk.io/x/circuit/types"
1518
@@ -24,9 +27,10 @@ const ConsensusVersion = 1
2427var (
2528 _ module.HasGRPCGateway = AppModule {}
2629
27- _ appmodule.AppModule = AppModule {}
28- _ appmodule.HasGenesis = AppModule {}
29- _ appmodule.HasRegisterInterfaces = AppModule {}
30+ _ appmodule.AppModule = AppModule {}
31+ _ appmodule.HasGenesis = AppModule {}
32+ _ appmodule.HasRegisterInterfaces = AppModule {}
33+ _ appmodulev2.HasTxValidator [transaction.Tx ] = AppModule {}
3034)
3135
3236// AppModule implements an application module for the circuit module.
@@ -107,3 +111,9 @@ func (am AppModule) ExportGenesis(ctx context.Context) (json.RawMessage, error)
107111 }
108112 return am .cdc .MarshalJSON (gs )
109113}
114+
115+ // TxValidator implements appmodule.HasTxValidator.
116+ func (am AppModule ) TxValidator (ctx context.Context , tx transaction.Tx ) error {
117+ validator := ante .NewCircuitBreakerDecorator (& am .keeper )
118+ return validator .ValidateTx (ctx , tx )
119+ }
0 commit comments