denommetadata

package
v1.8.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 25, 2024 License: Apache-2.0 Imports: 15 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type IBCModule added in v1.8.0

type IBCModule struct {
	porttypes.IBCModule
	// contains filtered or unexported fields
}

IBCModule implements the ICS26 callbacks for the transfer middleware

func NewIBCModule added in v1.8.0

func NewIBCModule(
	app porttypes.IBCModule,
	bankKeeper types.BankKeeper,
	transferKeeper types.TransferKeeper,
	hubKeeper types.HubKeeper,
	hooks types.MultiDenomMetadataHooks,
) IBCModule

NewIBCModule creates a new IBCModule given the keepers and underlying application

func (IBCModule) OnAcknowledgementPacket added in v1.8.0

func (im IBCModule) OnAcknowledgementPacket(
	ctx sdk.Context,
	packet channeltypes.Packet,
	acknowledgement []byte,
	relayer sdk.AccAddress,
) error

OnAcknowledgementPacket adds the token metadata to the hub if it doesn't exist

func (IBCModule) OnRecvPacket added in v1.8.0

func (im IBCModule) OnRecvPacket(
	ctx sdk.Context,
	packet channeltypes.Packet,
	relayer sdk.AccAddress,
) exported.Acknowledgement

OnRecvPacket registers the denom metadata if it does not exist. It will intercept an incoming packet and check if the denom metadata exists. If it does not, it will register the denom metadata. The handler will expect a 'denom_metadata' object in the memo field of the packet. If the memo is not an object, or does not contain the metadata, it moves on to the next handler.

type ICS4Wrapper added in v1.8.0

type ICS4Wrapper struct {
	porttypes.ICS4Wrapper
	// contains filtered or unexported fields
}

ICS4Wrapper intercepts outgoing IBC packets and adds token metadata to the memo if the hub doesn't have it. This is a solution for adding token metadata to fungible tokens transferred over IBC, in case the Hub doesn't have the token metadata for the token being transferred. More info here: https://www.notion.so/dymension/ADR-x-IBC-Denom-Metadata-Transfer-From-Rollapp-to-Hub-54e74e50adeb4d77b1f8777c05a73390?pvs=4

func NewICS4Wrapper added in v1.8.0

func NewICS4Wrapper(
	ics porttypes.ICS4Wrapper,
	hubKeeper types.HubKeeper,
	bankKeeper types.BankKeeper,
	getState func(ctx sdk.Context) hgtypes.State,
) *ICS4Wrapper

NewICS4Wrapper creates a new ICS4Wrapper.

func (*ICS4Wrapper) SendPacket added in v1.8.0

func (m *ICS4Wrapper) SendPacket(
	ctx sdk.Context,
	chanCap *capabilitytypes.Capability,
	destinationPort string, destinationChannel string,
	timeoutHeight clienttypes.Height,
	timeoutTimestamp uint64,
	data []byte,
) (sequence uint64, err error)

SendPacket wraps IBC ChannelKeeper's SendPacket function

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL