@@ -463,7 +463,7 @@ func NewAppKeeper(
463
463
appCodec ,
464
464
runtime .NewKVStoreService (appKeepers .keys [ibctransfertypes .StoreKey ]),
465
465
appKeepers .GetSubspace (ibctransfertypes .ModuleName ),
466
- appKeepers .PFMRouterKeeper , // ISC4 Wrapper: PFM Router middleware
466
+ appKeepers .IBCKeeper . ChannelKeeper , // ISC4 Wrapper: This is overridden later
467
467
appKeepers .IBCKeeper .ChannelKeeper ,
468
468
bApp .MsgServiceRouter (),
469
469
appKeepers .AccountKeeper ,
@@ -500,43 +500,35 @@ func NewAppKeeper(
500
500
wasmOpts ... ,
501
501
)
502
502
503
- // Middleware Stacks
504
- appKeepers .ICAModule = ica .NewAppModule (& appKeepers .ICAControllerKeeper , & appKeepers .ICAHostKeeper )
505
- appKeepers .TransferModule = transfer .NewAppModule (appKeepers .TransferKeeper )
506
- appKeepers .PFMRouterModule = pfmrouter .NewAppModule (appKeepers .PFMRouterKeeper , appKeepers .GetSubspace (pfmroutertypes .ModuleName ))
507
- appKeepers .RateLimitModule = ratelimit .NewAppModule (appCodec , appKeepers .RatelimitKeeper )
508
-
509
503
// wasmStackIBCHandler is injected into both ICA and transfer stacks
510
504
wasmStackIBCHandler := wasm .NewIBCHandler (appKeepers .WasmKeeper , appKeepers .IBCKeeper .ChannelKeeper ,
511
505
appKeepers .IBCKeeper .ChannelKeeper )
512
506
513
507
// Create Transfer Stack (from bottom to top of stack)
514
508
// - core IBC
515
- // - ibcfee
516
509
// - ratelimit
517
510
// - pfm
518
511
// - provider
519
512
// - callbacks
520
513
// - transfer
521
514
//
522
515
// This is how transfer stack will work in the end:
523
- // * RecvPacket -> IBC core -> Fee -> RateLimit -> PFM -> Provider -> Callbacks -> Transfer (AddRoute)
524
- // * SendPacket -> Transfer -> Callbacks -> Provider -> PFM -> RateLimit -> Fee -> IBC core (ICS4Wrapper)
516
+ // * RecvPacket -> IBC core -> RateLimit -> PFM -> Provider -> Callbacks -> Transfer (AddRoute)
517
+ // * SendPacket -> Transfer -> Callbacks -> PFM -> RateLimit -> IBC core (ICS4Wrapper)
525
518
526
519
var transferStack porttypes.IBCModule
527
520
transferStack = transfer .NewIBCModule (appKeepers .TransferKeeper )
528
- transferStack = ibccallbacks .NewIBCMiddleware (transferStack , appKeepers .IBCKeeper . ChannelKeeper , wasmStackIBCHandler ,
521
+ cbStack : = ibccallbacks .NewIBCMiddleware (transferStack , appKeepers .PFMRouterKeeper , wasmStackIBCHandler ,
529
522
gaiaparams .MaxIBCCallbackGas )
530
- transferICS4Wrapper := transferStack .(porttypes.ICS4Wrapper )
531
- transferStack = icsprovider .NewIBCMiddleware (transferStack , appKeepers .ProviderKeeper )
523
+ transferStack = icsprovider .NewIBCMiddleware (cbStack , appKeepers .ProviderKeeper )
532
524
transferStack = pfmrouter .NewIBCMiddleware (
533
525
transferStack ,
534
526
appKeepers .PFMRouterKeeper ,
535
527
0 , // retries on timeout
536
528
pfmrouterkeeper .DefaultForwardTransferPacketTimeoutTimestamp ,
537
529
)
538
530
transferStack = ratelimit .NewIBCMiddleware (appKeepers .RatelimitKeeper , transferStack )
539
- appKeepers .TransferKeeper .WithICS4Wrapper (transferICS4Wrapper )
531
+ appKeepers .TransferKeeper .WithICS4Wrapper (cbStack )
540
532
541
533
// Create ICAHost Stack
542
534
var icaHostStack porttypes.IBCModule = icahost .NewIBCModule (appKeepers .ICAHostKeeper )
@@ -571,6 +563,12 @@ func NewAppKeeper(
571
563
AddRoute (ibctransfertypes .PortID , transferStackV2 )
572
564
appKeepers .IBCKeeper .SetRouterV2 (ibcv2Router )
573
565
566
+ // Middleware Stacks
567
+ appKeepers .ICAModule = ica .NewAppModule (& appKeepers .ICAControllerKeeper , & appKeepers .ICAHostKeeper )
568
+ appKeepers .TransferModule = transfer .NewAppModule (appKeepers .TransferKeeper )
569
+ appKeepers .PFMRouterModule = pfmrouter .NewAppModule (appKeepers .PFMRouterKeeper , appKeepers .GetSubspace (pfmroutertypes .ModuleName ))
570
+ appKeepers .RateLimitModule = ratelimit .NewAppModule (appCodec , appKeepers .RatelimitKeeper )
571
+
574
572
return appKeepers
575
573
}
576
574
0 commit comments