This section elaborates on the transaction message handler methods being exposed by the House module.
Deposit
When a deposit transaction is processed, the following things happen:
Validate the incoming deposit message.
Call the Deposit method of the keeper.
RPC
The RPC for adding a market is as follows:
// Deposit defines a method for performing a deposit of coins to become part// of the house corresponding to a market.rpc Deposit(MsgDeposit) returns (MsgDepositResponse);
Request Message
The request message for Deposit is MsgDeposit. The proto for the request message is as follows:
// MsgDeposit defines a SDK message for performing a deposit of coins to become// part of the house corresponding to a market.message MsgDeposit {option(gogoproto.equal)=false;option(gogoproto.goproto_getters)=false;// creator is the account who makes a depositstring creator =1 [ (gogoproto.moretags) = "yaml:\"creator\"" ];// market_uid is the uid of market/order book against which deposit is being// made.string market_uid =2 [(gogoproto.customname) = "MarketUID",(gogoproto.jsontag) = "market_uid",json_name = "market_uid" ];// amount is the amount being deposited on an order book to be a housestring amount =3 [(gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int",(gogoproto.nullable) = false ];// ticket is the jwt ticket data.string ticket =4;}
Response Message
The response message for Deposit is MsgDepositResponse. The proto for the request message is as follows:
When a withdrawal transaction is processed, the following things happen:
Validate the incoming deposit message.
Call the Deposit method of the keeper.
RPC
The RPC for adding a market is as follows:
// Withdraw defines a method for performing a withdrawal of coins of unused// amount corresponding to a deposit.rpc Withdraw(MsgWithdraw) returns (MsgWithdrawResponse);
Request Message
The request message for Withdraw is MsgWithdraw. The proto for the request message is as follows:
// MsgWithdraw defines a SDK message for performing a withdrawal of coins of// unused amount corresponding to a deposit.message MsgWithdraw {option(gogoproto.equal)=false;option(gogoproto.goproto_getters)=false;string creator =1 [ (gogoproto.moretags) = "yaml:\"creator\"" ];string market_uid =2 [(gogoproto.customname) = "MarketUID",(gogoproto.jsontag) = "market_uid",json_name = "market_uid" ];// participation_index is the index corresponding to the order book// participationuint64 participation_index =3 [ (gogoproto.moretags) = "yaml:\"participation_index\"" ];// mode is the withdrawal mode. It can be full or partial withdrawWithdrawalMode mode =4 [ (gogoproto.moretags) = "yaml:\"mode\"" ];// amount is the requested withdrawal amountstring amount =5 [(gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int",(gogoproto.nullable) = false ];// ticket is the jwt ticket data.string ticket =6;}
Response Message
The response message for Withdraw is MsgWithdrawResponse. The proto for the request message is as follows: