forked from cerc-io/laconicd
4da8dd8d7b
* Add commands to get bonds by id and owner * Add commands to get bond module params and balances * Add commands to refill, withdraw and cancel bond * Add implementations for bond tx commands * Use indexed map to implement command for getting bond by owner * Use collections for bond module params * Clean up
95 lines
2.6 KiB
Go
95 lines
2.6 KiB
Go
package module
|
|
|
|
import (
|
|
autocliv1 "cosmossdk.io/api/cosmos/autocli/v1"
|
|
"cosmossdk.io/client/v2/autocli"
|
|
|
|
bondv1 "git.vdb.to/cerc-io/laconic2d/api/cerc/bond/v1"
|
|
)
|
|
|
|
var _ autocli.HasAutoCLIConfig = AppModule{}
|
|
|
|
// AutoCLIOptions implements the autocli.HasAutoCLIConfig interface.
|
|
func (am AppModule) AutoCLIOptions() *autocliv1.ModuleOptions {
|
|
return &autocliv1.ModuleOptions{
|
|
Query: &autocliv1.ServiceCommandDescriptor{
|
|
Service: bondv1.Query_ServiceDesc.ServiceName,
|
|
RpcCommandOptions: []*autocliv1.RpcCommandOptions{
|
|
{
|
|
RpcMethod: "Params",
|
|
Use: "params",
|
|
Short: "Get the current bond parameters",
|
|
PositionalArgs: []*autocliv1.PositionalArgDescriptor{},
|
|
},
|
|
{
|
|
RpcMethod: "Bonds",
|
|
Use: "list",
|
|
Short: "List bonds",
|
|
PositionalArgs: []*autocliv1.PositionalArgDescriptor{},
|
|
},
|
|
{
|
|
RpcMethod: "GetBondById",
|
|
Use: "get [bond-id]",
|
|
Short: "Get bond info by bond id",
|
|
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
|
{ProtoField: "id"},
|
|
},
|
|
},
|
|
{
|
|
RpcMethod: "GetBondsByOwner",
|
|
Use: "by-owner [owner-address]",
|
|
Short: "Get bonds list by owner address",
|
|
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
|
{ProtoField: "owner"},
|
|
},
|
|
},
|
|
{
|
|
RpcMethod: "GetBondsModuleBalance",
|
|
Use: "balance",
|
|
Short: "Get bond module account balances",
|
|
PositionalArgs: []*autocliv1.PositionalArgDescriptor{},
|
|
},
|
|
},
|
|
},
|
|
Tx: &autocliv1.ServiceCommandDescriptor{
|
|
Service: bondv1.Msg_ServiceDesc.ServiceName,
|
|
RpcCommandOptions: []*autocliv1.RpcCommandOptions{
|
|
{
|
|
RpcMethod: "CreateBond",
|
|
Use: "create [amount]",
|
|
Short: "Create bond",
|
|
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
|
{ProtoField: "coins"},
|
|
},
|
|
},
|
|
{
|
|
RpcMethod: "RefillBond",
|
|
Use: "refill [bond-id] [amount]",
|
|
Short: "Refill bond",
|
|
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
|
{ProtoField: "id"},
|
|
{ProtoField: "coins"},
|
|
},
|
|
},
|
|
{
|
|
RpcMethod: "WithdrawBond",
|
|
Use: "withdraw [bond-id] [amount]",
|
|
Short: "Withdraw amount from bond",
|
|
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
|
{ProtoField: "id"},
|
|
{ProtoField: "coins"},
|
|
},
|
|
},
|
|
{
|
|
RpcMethod: "CancelBond",
|
|
Use: "cancel [bond-id]",
|
|
Short: "Cancel bond",
|
|
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
|
{ProtoField: "id"},
|
|
},
|
|
},
|
|
},
|
|
},
|
|
}
|
|
}
|