From 2217aaf54fd9219fb134aac1a1b78d2ae74c3f72 Mon Sep 17 00:00:00 2001 From: mossid Date: Tue, 13 Mar 2018 19:39:06 +0100 Subject: [PATCH] router -> dispatcher, get rid of sdk.Msg --- docs/spec/ibc/mvp1.md | 2 ++ docs/spec/ibc/mvp2.md | 18 +++++++++--------- docs/spec/ibc/mvp3.md | 16 ++++++++-------- 3 files changed, 19 insertions(+), 17 deletions(-) diff --git a/docs/spec/ibc/mvp1.md b/docs/spec/ibc/mvp1.md index 6f94b7e80b..718c9e4a85 100644 --- a/docs/spec/ibc/mvp1.md +++ b/docs/spec/ibc/mvp1.md @@ -16,11 +16,13 @@ type IBCTransferPacket struct { Coins sdk.Coins } +// Implements sdk.Msg type IBCTransferMsg struct { IBCTransferPacket DestChain string } +// Implements sdk.Msg type IBCReceiveMsg struct { IBCTransferPacket SrcChain string diff --git a/docs/spec/ibc/mvp2.md b/docs/spec/ibc/mvp2.md index 3a3fc14ec8..860bbdc2f9 100644 --- a/docs/spec/ibc/mvp2.md +++ b/docs/spec/ibc/mvp2.md @@ -4,7 +4,7 @@ ## MVP2 -IBC module will store its own router for handling custom incoming msgs. `IBCPush` and `IBCReceive` are made for inter-module communication +IBC module will store its own router for handling custom incoming msgs. `IBCPush` are made for inter-module communication. `IBCRegisterMsg` adds a handler in the router of the module. ### IBC Module @@ -17,25 +17,25 @@ type IBCTransferData struct { Coins sdk.Coins } -// Implements sdk.Msg -type IBCTransferMsg struct { +// Implements ibc.PacketData +type IBCTransferPacket struct { IBCTransferData } -// Implements sdk.Msg -type IBCReceiveMsg struct { +// Implements ibc.PacketData +type IBCReceivePacket struct { IBCTransferData } -type IBCPacket struct { - Msg IBCMsg +type Packet struct { + Data PacketData SrcChain string DestChain string } // Internal API -func NewHandler(router sdk.Router, ibcm IBCMapper) sdk.Handler +func NewHandler(dispatcher Dispatcher, ibcm IBCMapper) sdk.Handler type IBCMapper struct { ingressKey sdk.StoreKey // Source Chain ID => last income msg's sequence @@ -52,7 +52,7 @@ type EgressKey struct { } // Used by other modules -func (ibcm IBCMapper) PushPacket(ctx sdk.Context, dest string, packet IBCTransferPacket) +func (ibcm IBCMapper) PushPacket(ctx sdk.Context, dest string, data PacketData) ``` `egressKey` stores the outgoing `IBCTransfer`s as a list. Its getter takes an `EgressKey` and returns the length if `egressKey.Index == -1`, an element if `egressKey.Index > 0`. diff --git a/docs/spec/ibc/mvp3.md b/docs/spec/ibc/mvp3.md index 5b18ab2940..d53e2c00e3 100644 --- a/docs/spec/ibc/mvp3.md +++ b/docs/spec/ibc/mvp3.md @@ -15,18 +15,18 @@ type IBCTransferData struct { Coins sdk.Coins } -// Implements sdk.Msg -type IBCTransferMsg struct { +// Implements ibc.PacketData +type IBCTransferPacket struct { IBCTransferData } -// Implements sdk.Msg -type IBCReceiveMsg struct { +// Implements ibc.PacketData +type IBCReceivePacket struct { IBCTransferData } -type IBCPacket struct { - Msg IBCMsg +type Packet struct { + Data PacketData SrcChain string DestChain string } @@ -49,7 +49,7 @@ type IBCUpdateMsg struct { // Internal API -func NewHandler(router sdk.Router, ibcm IBCMapper) sdk.Handler +func NewHandler(dispatcher Dispatcher, ibcm IBCMapper) sdk.Handler type IBCMapper struct { ingressKey sdk.StoreKey // ChannelID => last income msg's sequence @@ -71,7 +71,7 @@ type HeaderKey struct { } // Used by other modules -func (ibcm IBCMapper) PushPacket(ctx sdk.Context, dest string, packet IBCTransferPacket) +func (ibcm IBCMapper) PushPacket(ctx sdk.Context, dest string, data PacketData) ```