Prathamesh Musale
de489a4d21
Reviewed-on: deep-stack/laconic2d#4 Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com> Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
105 lines
3.5 KiB
Protocol Buffer
105 lines
3.5 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package cerc.bond.v1;
|
|
|
|
import "gogoproto/gogo.proto";
|
|
import "google/api/annotations.proto";
|
|
import "cosmos/base/query/v1beta1/pagination.proto";
|
|
import "cosmos/base/v1beta1/coin.proto";
|
|
import "cerc/bond/v1/bond.proto";
|
|
// import "cosmos/query/v1/query.proto";
|
|
|
|
option go_package = "git.vdb.to/cerc-io/laconic2d/x/bond";
|
|
|
|
// Query defines the gRPC querier service for bond module
|
|
service Query {
|
|
// Params queries bonds module params.
|
|
rpc Params(QueryParamsRequest) returns (QueryParamsResponse) {
|
|
option (google.api.http).get = "/cerc/bond/v1/params";
|
|
}
|
|
|
|
// Bonds queries bonds list
|
|
rpc Bonds(QueryGetBondsRequest) returns (QueryGetBondsResponse) {
|
|
// Mark query as module_query_safe?
|
|
// option (cosmos.query.v1.module_query_safe) = true;
|
|
option (google.api.http).get = "/cerc/bond/v1/bonds";
|
|
}
|
|
|
|
// GetBondById
|
|
rpc GetBondById(QueryGetBondByIdRequest) returns (QueryGetBondByIdResponse) {
|
|
option (google.api.http).get = "/cerc/bond/v1/bonds/{id}";
|
|
}
|
|
|
|
// Get Bonds list by Owner
|
|
rpc GetBondsByOwner(QueryGetBondsByOwnerRequest) returns (QueryGetBondsByOwnerResponse) {
|
|
option (google.api.http).get = "/cerc/bond/v1/by-owner/{owner}";
|
|
}
|
|
|
|
// Get Bond module balance
|
|
rpc GetBondsModuleBalance(QueryGetBondModuleBalanceRequest) returns (QueryGetBondModuleBalanceResponse) {
|
|
option (google.api.http).get = "/cerc/bond/v1/balance";
|
|
}
|
|
}
|
|
|
|
// QueryParamsRequest is request for query the bond module params
|
|
message QueryParamsRequest {}
|
|
|
|
// QueryParamsResponse returns response type of bond module params
|
|
message QueryParamsResponse {
|
|
Params params = 1 [(gogoproto.moretags) = "json:\"params\" yaml:\"params\""];
|
|
}
|
|
|
|
// QueryGetBondById queries a bonds.
|
|
message QueryGetBondsRequest {
|
|
// pagination defines an optional pagination for the request.
|
|
cosmos.base.query.v1beta1.PageRequest pagination = 1;
|
|
}
|
|
|
|
// QueryGetBondsResponse is response type for get the bonds by bond-id
|
|
message QueryGetBondsResponse {
|
|
repeated Bond bonds = 1 [(gogoproto.moretags) = "json:\"bonds\" yaml:\"bonds\""];
|
|
|
|
// pagination defines the pagination in the response.
|
|
cosmos.base.query.v1beta1.PageResponse pagination = 2;
|
|
}
|
|
|
|
// QueryGetBondById
|
|
message QueryGetBondByIdRequest {
|
|
string id = 1 [(gogoproto.moretags) = "json:\"id\" yaml:\"id\""];
|
|
}
|
|
|
|
// QueryGetBondByIdResponse returns QueryGetBondById query response
|
|
message QueryGetBondByIdResponse {
|
|
Bond bond = 1 [(gogoproto.moretags) = "json:\"bond\" yaml:\"bond\""];
|
|
}
|
|
|
|
// QueryGetBondsByOwnerRequest is request type for Query/GetBondsByOwner RPC Method
|
|
message QueryGetBondsByOwnerRequest {
|
|
string owner = 1;
|
|
// pagination defines the pagination in the response.
|
|
cosmos.base.query.v1beta1.PageResponse pagination = 2;
|
|
}
|
|
|
|
// QueryGetBondsByOwnerResponse is response type for Query/GetBondsByOwner RPC Method
|
|
message QueryGetBondsByOwnerResponse {
|
|
repeated Bond bonds = 1 [
|
|
(gogoproto.nullable) = false,
|
|
(gogoproto.moretags) = "json:\"bonds\" yaml:\"bonds\""
|
|
];
|
|
|
|
// pagination defines the pagination in the response.
|
|
cosmos.base.query.v1beta1.PageResponse pagination = 2;
|
|
}
|
|
|
|
// QueryGetBondModuleBalanceRequest is request type for bond module balance rpc method
|
|
message QueryGetBondModuleBalanceRequest {}
|
|
|
|
// QueryGetBondModuleBalanceResponse is the response type for bond module balance rpc method
|
|
message QueryGetBondModuleBalanceResponse {
|
|
repeated cosmos.base.v1beta1.Coin balance = 1 [
|
|
(gogoproto.nullable) = false,
|
|
(gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins",
|
|
(gogoproto.moretags) = "json:\"coins\" yaml:\"coins\""
|
|
];
|
|
}
|