Documentation ¶
Index ¶
- type Keeper
- func (k Keeper) GetIBCDenomDestinationIdentifiers(ctx sdk.Context, denom, sender string) (destinationPort, destinationChannel string, err error)
- func (k Keeper) GetParams(ctx sdk.Context) (params types.Params)
- func (k Keeper) Logger(ctx sdk.Context) log.Logger
- func (k Keeper) OnRecvPacket(ctx sdk.Context, packet channeltypes.Packet, ack exported.Acknowledgement) exported.Acknowledgement
- func (k Keeper) Params(c context.Context, _ *types.QueryParamsRequest) (*types.QueryParamsResponse, error)
- func (k Keeper) SendPacket(ctx sdk.Context, channelCap *capabilitytypes.Capability, ...) error
- func (k *Keeper) SetICS4Wrapper(ics4Wrapper porttypes.ICS4Wrapper)
- func (k Keeper) SetParams(ctx sdk.Context, params types.Params)
- func (k Keeper) WriteAcknowledgement(ctx sdk.Context, channelCap *capabilitytypes.Capability, ...) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Keeper ¶
type Keeper struct {
// contains filtered or unexported fields
}
Keeper struct
func NewKeeper ¶
func NewKeeper( ps paramtypes.Subspace, ak types.AccountKeeper, bk types.BankKeeper, ck types.ChannelKeeper, tk types.TransferKeeper, ) *Keeper
NewKeeper returns keeper
func (Keeper) GetIBCDenomDestinationIdentifiers ¶
func (k Keeper) GetIBCDenomDestinationIdentifiers(ctx sdk.Context, denom, sender string) (destinationPort, destinationChannel string, err error)
GetIBCDenomDestinationIdentifiers returns the destination port and channel of the IBC denomination, i.e port and channel on Enron for the voucher. It returns an error if:
- the denomination is invalid
- the denom trace is not found on the store
- destination port or channel ID are invalid
func (Keeper) OnRecvPacket ¶
func (k Keeper) OnRecvPacket( ctx sdk.Context, packet channeltypes.Packet, ack exported.Acknowledgement, ) exported.Acknowledgement
OnRecvPacket performs an IBC receive callback. It returns the tokens that users transferred to their Cosmos secp256k1 address instead of the Ethereum ethsecp256k1 address. The expected behavior is as follows:
First transfer from authorized source chain:
- sends back IBC tokens which originated from the source chain
- sends over all Enron native tokens
Second transfer from a different authorized source chain:
- only sends back IBC tokens which originated from the source chain
func (Keeper) Params ¶
func (k Keeper) Params( c context.Context, _ *types.QueryParamsRequest, ) (*types.QueryParamsResponse, error)
Params returns the module parameters
func (Keeper) SendPacket ¶
func (k Keeper) SendPacket(ctx sdk.Context, channelCap *capabilitytypes.Capability, packet exported.PacketI) error
SendPacket implements the ICS4Wrapper interface from the transfer module. It calls the underlying SendPacket function directly to move down the middleware stack.
func (*Keeper) SetICS4Wrapper ¶
func (k *Keeper) SetICS4Wrapper(ics4Wrapper porttypes.ICS4Wrapper)
SetICS4Wrapper sets the ICS4 wrapper to the keeper. It panics if already set
func (Keeper) WriteAcknowledgement ¶
func (k Keeper) WriteAcknowledgement(ctx sdk.Context, channelCap *capabilitytypes.Capability, packet exported.PacketI, ack exported.Acknowledgement) error
WriteAcknowledgement implements the ICS4Wrapper interface from the transfer module. It calls the underlying WriteAcknowledgement function directly to move down the middleware stack.