forked from cerc-io/laconicd-deprecated
migrate: add dxns module
1. add bond,auction, nameserivce module 2. update to v0.12.2 ethermint version 3. fix the test cases 4. add gql server
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.auction.v1beta1;
|
||||
|
||||
import "gogoproto/gogo.proto";
|
||||
import "vulcanize/auction/v1beta1/types.proto";
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/auction/types";
|
||||
|
||||
// GenesisState defines the genesis state of the auction module
|
||||
message GenesisState {
|
||||
Params params = 1 [(gogoproto.nullable) = false];
|
||||
repeated Auction auctions = 2 [
|
||||
(gogoproto.moretags) = "json:\"bonds\" yaml:\"bonds\""
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,149 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.auction.v1beta1;
|
||||
|
||||
import "gogoproto/gogo.proto";
|
||||
import "google/api/annotations.proto";
|
||||
import "cosmos/base/query/v1beta1/pagination.proto";
|
||||
import "cosmos/base/v1beta1/coin.proto";
|
||||
import "vulcanize/auction/v1beta1/types.proto";
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/auction/types";
|
||||
|
||||
// AuctionsRequest is the format for querying all the auctions
|
||||
message AuctionsRequest {
|
||||
// pagination defines an optional pagination info for the next request
|
||||
cosmos.base.query.v1beta1.PageRequest pagination = 1;
|
||||
}
|
||||
|
||||
// AuctionsResponse returns the list of all auctions
|
||||
message AuctionsResponse {
|
||||
// List of auctions
|
||||
Auctions auctions = 1;
|
||||
// pagination defines an optional pagination info for the next request
|
||||
cosmos.base.query.v1beta1.PageRequest pagination = 2;
|
||||
}
|
||||
|
||||
// AuctionRequest is the format for querying a specific auction
|
||||
message AuctionRequest {
|
||||
// Auction ID
|
||||
string id = 1;
|
||||
}
|
||||
|
||||
// AuctionResponse returns the details of the queried auction
|
||||
message AuctionResponse {
|
||||
// Auction details
|
||||
Auction auction = 1;
|
||||
}
|
||||
|
||||
// BidRequest is the format for querying a specific bid in an auction
|
||||
message BidRequest {
|
||||
// Auction ID
|
||||
string auction_id = 1;
|
||||
// Bidder address
|
||||
string bidder = 2;
|
||||
}
|
||||
|
||||
// BidResponse returns the details of the queried bid
|
||||
message BidResponse {
|
||||
// Bid details
|
||||
Bid bid = 1;
|
||||
}
|
||||
|
||||
// BidsRequest is the format for querying all bids in an auction
|
||||
message BidsRequest {
|
||||
// Auction ID
|
||||
string auction_id = 1;
|
||||
}
|
||||
|
||||
// BidsResponse returns details of all bids in an auction
|
||||
message BidsResponse {
|
||||
// List of bids in the auction
|
||||
repeated Bid bids = 1;
|
||||
}
|
||||
|
||||
// AuctionsByBidderRequest is the format for querying all auctions containing a bidder address
|
||||
message AuctionsByBidderRequest {
|
||||
// Address of the bidder
|
||||
string bidder_address = 1;
|
||||
}
|
||||
|
||||
// AuctionsByBidderResponse returns all auctions containing a bidder
|
||||
message AuctionsByBidderResponse {
|
||||
// List of auctions
|
||||
Auctions auctions = 1;
|
||||
}
|
||||
|
||||
// AuctionsByOwnerRequest is the format for querying all auctions created by an owner
|
||||
message AuctionsByOwnerRequest {
|
||||
// Address of the owner
|
||||
string owner_address = 1;
|
||||
}
|
||||
|
||||
// AuctionsByOwnerResponse returns all auctions created by an owner
|
||||
message AuctionsByOwnerResponse {
|
||||
// List of auctions
|
||||
Auctions auctions = 1;
|
||||
}
|
||||
|
||||
// QueryParamsRequest is the format to query the parameters of the auction module
|
||||
message QueryParamsRequest {
|
||||
}
|
||||
|
||||
// QueryParamsResponse returns parameters of the auction module
|
||||
message QueryParamsResponse {
|
||||
Params params = 1;
|
||||
}
|
||||
|
||||
// BalanceRequest is the format to fetch all balances
|
||||
message BalanceRequest {
|
||||
}
|
||||
|
||||
message BalanceResponse {
|
||||
// Set of all balances within the auction
|
||||
repeated cosmos.base.v1beta1.Coin balance = 1 [
|
||||
(gogoproto.nullable) = false
|
||||
];
|
||||
}
|
||||
|
||||
// Query defines the gRPC querier interface for the auction module
|
||||
service Query {
|
||||
// Auctions queries all auctions
|
||||
rpc Auctions(AuctionsRequest) returns (AuctionsResponse) {
|
||||
option (google.api.http).get = "/vulcanize/auction/v1beta1/auctions";
|
||||
}
|
||||
|
||||
// GetAuction queries an auction
|
||||
rpc GetAuction(AuctionRequest) returns (AuctionResponse) {
|
||||
option (google.api.http).get = "/vulcanize/auction/v1beta1/auctions/{id}";
|
||||
}
|
||||
|
||||
// GetBid queries an auction bid
|
||||
rpc GetBid(BidRequest) returns (BidResponse) {
|
||||
option (google.api.http).get = "/vulcanize/auction/v1beta1/bids/{auction_id}/{bidder}";
|
||||
}
|
||||
|
||||
// GetBids queries all auction bids
|
||||
rpc GetBids(BidsRequest) returns (BidsResponse) {
|
||||
option (google.api.http).get = "/vulcanize/auction/v1beta1/bids/{auction_id}";
|
||||
}
|
||||
|
||||
// AuctionsByBidder queries auctions by bidder
|
||||
rpc AuctionsByBidder(AuctionsByBidderRequest) returns (AuctionsByBidderResponse) {
|
||||
option (google.api.http).get = "/vulcanize/auction/v1beta1/by-bidder/{bidder_address}";
|
||||
}
|
||||
|
||||
// AuctionsByOwner queries auctions by owner
|
||||
rpc AuctionsByOwner(AuctionsByOwnerRequest) returns (AuctionsByOwnerResponse) {
|
||||
option (google.api.http).get = "/vulcanize/auction/v1beta1/by-owner/{owner_address}";
|
||||
}
|
||||
|
||||
// QueryParams implements the params query command
|
||||
rpc QueryParams(QueryParamsRequest) returns (QueryParamsResponse) {
|
||||
option (google.api.http).get = "/vulcanize/auction/v1beta1/params";
|
||||
}
|
||||
|
||||
// Balance queries the auction module account balance
|
||||
rpc Balance(BalanceRequest) returns (BalanceResponse) {
|
||||
option (google.api.http).get = "/vulcanize/auction/v1beta1/balance";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,122 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.auction.v1beta1;
|
||||
|
||||
import "gogoproto/gogo.proto";
|
||||
import "google/protobuf/duration.proto";
|
||||
import "cosmos/base/v1beta1/coin.proto";
|
||||
import "vulcanize/auction/v1beta1/types.proto";
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/auction/types";
|
||||
|
||||
// MsgCreateAuction defines a create auction message
|
||||
message MsgCreateAuction {
|
||||
option (gogoproto.goproto_getters) = false;
|
||||
|
||||
// Duration of the commits phase in seconds
|
||||
google.protobuf.Duration commits_duration = 1 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.stdduration) = true,
|
||||
(gogoproto.moretags) = "json:\"commits_duration\" yaml:\"commits_duration\""
|
||||
];
|
||||
// Duration of the reveals phase in seconds
|
||||
google.protobuf.Duration reveals_duration = 2 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.stdduration) = true,
|
||||
(gogoproto.moretags) = "json:\"reveals_duration\" yaml:\"reveals_duration\""
|
||||
];
|
||||
// Commit fees
|
||||
cosmos.base.v1beta1.Coin commit_fee = 3 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"commit_fee\" yaml:\"commit_fee\""
|
||||
];
|
||||
// Reveal fees
|
||||
cosmos.base.v1beta1.Coin reveal_fee = 4 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"reveal_fee\" yaml:\"reveal_fee\""
|
||||
];
|
||||
// Minimum acceptable bid amount
|
||||
cosmos.base.v1beta1.Coin minimum_bid = 5 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"minimum_bid\" yaml:\"minimum_bid\""
|
||||
];
|
||||
// Address of the signer
|
||||
string signer = 6 [
|
||||
(gogoproto.moretags) = "json:\"signer\" yaml:\"signer\""
|
||||
];
|
||||
}
|
||||
|
||||
// MsgCreateAuctionResponse returns the details of the created auction
|
||||
message MsgCreateAuctionResponse {
|
||||
option (gogoproto.goproto_getters) = false;
|
||||
// Auction details
|
||||
Auction auction = 1 [
|
||||
(gogoproto.moretags) = "json:\"auction\" yaml:\"auction\""
|
||||
];
|
||||
}
|
||||
|
||||
// CommitBid defines the message to commit a bid
|
||||
message MsgCommitBid {
|
||||
option (gogoproto.goproto_getters) = false;
|
||||
|
||||
// Auction ID
|
||||
string auction_id = 1 [
|
||||
(gogoproto.moretags) = "json:\"auction_id\" yaml:\"auction_id\""
|
||||
];
|
||||
// Commit Hash
|
||||
string commit_hash = 2 [
|
||||
(gogoproto.moretags) = "json:\"commit_hash\" yaml:\"commit_hash\""
|
||||
];
|
||||
// Address of the signer
|
||||
string signer = 3 [
|
||||
(gogoproto.moretags) = "json:\"signer\" yaml:\"signer\""
|
||||
];
|
||||
}
|
||||
|
||||
// RevealBid defines the message to reveal a bid
|
||||
message MsgRevealBid {
|
||||
option (gogoproto.goproto_getters) = false;
|
||||
|
||||
// Auction ID
|
||||
string auction_id = 1 [
|
||||
(gogoproto.moretags) = "json:\"auction_id\" yaml:\"auction_id\""
|
||||
];
|
||||
// Commit Hash
|
||||
string reveal = 2 [
|
||||
(gogoproto.moretags) = "json:\"reveal\" yaml:\"reveal\""
|
||||
];
|
||||
// Address of the signer
|
||||
string signer = 3 [
|
||||
(gogoproto.moretags) = "json:\"signer\" yaml:\"signer\""
|
||||
];
|
||||
}
|
||||
|
||||
// MsgCommitBidResponse returns the state of the auction after the bid creation
|
||||
message MsgCommitBidResponse {
|
||||
option (gogoproto.goproto_getters) = false;
|
||||
// Auction details
|
||||
Bid bid = 1 [
|
||||
(gogoproto.moretags) = "json:\"bid\" yaml:\"bid\""
|
||||
];
|
||||
}
|
||||
|
||||
// MsgRevealBidResponse returns the state of the auction after the bid reveal
|
||||
message MsgRevealBidResponse {
|
||||
option (gogoproto.goproto_getters) = false;
|
||||
// Auction details
|
||||
Auction auction = 1 [
|
||||
(gogoproto.moretags) = "json:\"auction\" yaml:\"auction\""
|
||||
];
|
||||
}
|
||||
|
||||
// Tx defines the gRPC tx interface
|
||||
service Msg {
|
||||
// CreateAuction is the command for creating an auction
|
||||
rpc CreateAuction(MsgCreateAuction) returns (MsgCreateAuctionResponse);
|
||||
|
||||
// CommitBid is the command for committing a bid
|
||||
rpc CommitBid(MsgCommitBid) returns (MsgCommitBidResponse);
|
||||
|
||||
//RevealBid is the command for revealing a bid
|
||||
rpc RevealBid(MsgRevealBid) returns (MsgRevealBidResponse);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,135 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.auction.v1beta1;
|
||||
|
||||
import "gogoproto/gogo.proto";
|
||||
import "google/protobuf/duration.proto";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "cosmos/base/v1beta1/coin.proto";
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/auction/types";
|
||||
|
||||
// Params defines the auction module parameters
|
||||
message Params {
|
||||
option (gogoproto.goproto_stringer) = false;
|
||||
|
||||
// Duration of the commits phase in seconds
|
||||
google.protobuf.Duration commits_duration = 1 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.stdduration) = true,
|
||||
(gogoproto.moretags) = "json:\"commits_duration\" yaml:\"commits_duration\""
|
||||
];
|
||||
// Duration of the reveals phase in seconds
|
||||
google.protobuf.Duration reveals_duration = 2 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.stdduration) = true,
|
||||
(gogoproto.moretags) = "json:\"reveals_duration\" yaml:\"reveals_duration\""
|
||||
];
|
||||
// Commit fees
|
||||
cosmos.base.v1beta1.Coin commit_fee = 3 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"commit_fee\" yaml:\"commit_fee\""
|
||||
];
|
||||
// Reveal fees
|
||||
cosmos.base.v1beta1.Coin reveal_fee = 4 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"reveal_fee\" yaml:\"reveal_fee\""
|
||||
];
|
||||
// Minimum acceptable bid amount
|
||||
cosmos.base.v1beta1.Coin minimum_bid = 5 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"minimum_bid\" yaml:\"minimum_bid\""
|
||||
];
|
||||
}
|
||||
|
||||
// Auction represents a sealed-bid on-chain auction
|
||||
message Auction {
|
||||
option (gogoproto.goproto_getters) = false;
|
||||
|
||||
string id = 1;
|
||||
string status = 2;
|
||||
// Address of the creator of the auction
|
||||
string owner_address = 3;
|
||||
// Timestamp at which the auction was created
|
||||
google.protobuf.Timestamp create_time = 4 [
|
||||
(gogoproto.stdtime) = true,
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"create_time\" yaml:\"create_time\""
|
||||
];
|
||||
// Timestamp at which the commits phase concluded
|
||||
google.protobuf.Timestamp commits_end_time = 5 [
|
||||
(gogoproto.stdtime) = true,
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"commits_end_time\" yaml:\"commits_end_time\""
|
||||
];
|
||||
// Timestamp at which the reveals phase concluded
|
||||
google.protobuf.Timestamp reveals_end_time = 6 [
|
||||
(gogoproto.stdtime) = true,
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"reveals_end_time\" yaml:\"reveals_end_time\""
|
||||
];
|
||||
// Commit and reveal fees must both be paid when committing a bid
|
||||
// Reveal fee is returned only if the bid is revealed
|
||||
cosmos.base.v1beta1.Coin commit_fee = 7 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"commit_fee\" yaml:\"commit_fee\""
|
||||
];
|
||||
cosmos.base.v1beta1.Coin reveal_fee = 8 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"reveal_fee\" yaml:\"reveal_fee\""
|
||||
];
|
||||
// Minimum acceptable bid amount for a valid commit
|
||||
cosmos.base.v1beta1.Coin minimum_bid = 9 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"minimum_bid\" yaml:\"minimum_bid\""
|
||||
];
|
||||
// Address of the winner
|
||||
string winner_address = 10;
|
||||
// Winning bid, i.e., the highest bid
|
||||
cosmos.base.v1beta1.Coin winning_bid = 11 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"winning_bid\" yaml:\"winning_bid\""
|
||||
];
|
||||
// Amount the winner pays, i.e. the second highest auction
|
||||
cosmos.base.v1beta1.Coin winning_price = 12 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"winning_price\" yaml:\"winning_price\""
|
||||
];
|
||||
}
|
||||
|
||||
message Auctions {
|
||||
option (gogoproto.goproto_getters) = false;
|
||||
|
||||
repeated Auction auctions = 1 [(gogoproto.nullable) = false];
|
||||
}
|
||||
|
||||
// Bid represents a sealed bid (commit) made during the auction
|
||||
message Bid {
|
||||
option (gogoproto.goproto_getters) = false;
|
||||
|
||||
string auction_id = 1;
|
||||
string bidder_address = 2;
|
||||
string status = 3;
|
||||
string commit_hash = 4;
|
||||
google.protobuf.Timestamp commit_time = 5 [
|
||||
(gogoproto.stdtime) = true,
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"commit_time\" yaml:\"commit_time\""
|
||||
];
|
||||
cosmos.base.v1beta1.Coin commit_fee = 6 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"commit_fee\" yaml:\"commit_fee\""
|
||||
];
|
||||
google.protobuf.Timestamp reveal_time = 7 [
|
||||
(gogoproto.stdtime) = true,
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"reveal_time\" yaml:\"reveal_time\""
|
||||
];
|
||||
cosmos.base.v1beta1.Coin reveal_fee = 8 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"reveal_fee\" yaml:\"reveal_fee\""
|
||||
];
|
||||
cosmos.base.v1beta1.Coin bid_amount = 9 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"bid_amount\" yaml:\"bid_amount\""
|
||||
];;
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.bond.v1beta1;
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/bond/types";
|
||||
|
||||
import "gogoproto/gogo.proto";
|
||||
import "cosmos/base/v1beta1/coin.proto";
|
||||
|
||||
// Params defines the bond module parameters
|
||||
message Params {
|
||||
// max_bond_amount is maximum amount to bond
|
||||
cosmos.base.v1beta1.Coin max_bond_amount = 1 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"max_bond_amount\" yaml:\"max_bond_amount\""
|
||||
];
|
||||
}
|
||||
|
||||
// Bond represents funds deposited by an account for record rent payments.
|
||||
message Bond {
|
||||
// id is unique identifier of the bond
|
||||
string id = 1;
|
||||
// owner of the bond
|
||||
string owner = 2;
|
||||
// balance of the bond
|
||||
repeated cosmos.base.v1beta1.Coin balance = 3 [
|
||||
(gogoproto.nullable) = false, (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins",
|
||||
(gogoproto.moretags) = "json:\"balance\" yaml:\"balance\""
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.bond.v1beta1;
|
||||
|
||||
import "gogoproto/gogo.proto";
|
||||
import "vulcanize/bond/v1beta1/bond.proto";
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/bond/types";
|
||||
|
||||
// GenesisState defines the bond module's genesis state.
|
||||
message GenesisState {
|
||||
// params defines all the parameters of the module.
|
||||
Params params = 1 [(gogoproto.nullable) = false];
|
||||
|
||||
// bonds defines all the bonds
|
||||
repeated Bond bonds = 2 [
|
||||
(gogoproto.moretags) = "json:\"bonds\" yaml:\"bonds\""
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,109 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.bond.v1beta1;
|
||||
|
||||
import "gogoproto/gogo.proto";
|
||||
import "vulcanize/bond/v1beta1/bond.proto";
|
||||
import "google/api/annotations.proto";
|
||||
import "cosmos/base/query/v1beta1/pagination.proto";
|
||||
import "cosmos/base/v1beta1/coin.proto";
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/bond/types";
|
||||
|
||||
// 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 = "/vulcanize/bond/v1beta1/params";
|
||||
}
|
||||
|
||||
// Bonds queries bonds list.
|
||||
rpc Bonds(QueryGetBondsRequest) returns (QueryGetBondsResponse) {
|
||||
option (google.api.http).get = "/vulcanize/bond/v1beta1/bonds";
|
||||
}
|
||||
|
||||
// GetBondById
|
||||
rpc GetBondById(QueryGetBondByIdRequest) returns (QueryGetBondByIdResponse){
|
||||
option (google.api.http).get = "/vulcanize/bond/v1beta1/bonds/{id}";
|
||||
}
|
||||
|
||||
// Get Bonds List by Owner
|
||||
rpc GetBondsByOwner(QueryGetBondsByOwnerRequest) returns (QueryGetBondsByOwnerResponse){
|
||||
option (google.api.http).get = "/vulcanize/bond/v1beta1/by-owner/{owner}";
|
||||
}
|
||||
|
||||
// Get Bonds module balance
|
||||
rpc GetBondsModuleBalance(QueryGetBondModuleBalanceRequest) returns (QueryGetBondModuleBalanceResponse){
|
||||
option (google.api.http).get = "/vulcanize/bond/v1beta1/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 bond by bond-id.
|
||||
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 = 2 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins",
|
||||
(gogoproto.moretags) = "json:\"coins\" yaml:\"coins\""
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.bond.v1beta1;
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/bond/types";
|
||||
|
||||
import "gogoproto/gogo.proto";
|
||||
import "cosmos/base/v1beta1/coin.proto";
|
||||
|
||||
// Msg defines the bond Msg service.
|
||||
service Msg {
|
||||
// CreateBond defines a method for creating a new bond.
|
||||
rpc CreateBond(MsgCreateBond) returns (MsgCreateBondResponse);
|
||||
|
||||
// RefillBond defines a method for refilling amount for bond.
|
||||
rpc RefillBond(MsgRefillBond) returns (MsgRefillBondResponse);
|
||||
|
||||
// WithdrawBond defines a method for withdrawing amount from bond.
|
||||
rpc WithdrawBond(MsgWithdrawBond) returns (MsgWithdrawBondResponse);
|
||||
|
||||
// CancelBond defines a method for cancelling a bond.
|
||||
rpc CancelBond(MsgCancelBond) returns (MsgCancelBondResponse);
|
||||
}
|
||||
|
||||
// MsgCreateBond defines a SDK message for creating a new bond.
|
||||
message MsgCreateBond{
|
||||
string signer = 1;
|
||||
repeated cosmos.base.v1beta1.Coin coins = 2 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins",
|
||||
(gogoproto.moretags) = "json:\"coins\" yaml:\"coins\""
|
||||
];
|
||||
}
|
||||
|
||||
// MsgCreateBondResponse defines the Msg/CreateBond response type.
|
||||
message MsgCreateBondResponse{
|
||||
string id = 1;
|
||||
}
|
||||
|
||||
// MsgRefillBond defines a SDK message for refill the amount for bond.
|
||||
message MsgRefillBond{
|
||||
string id = 1;
|
||||
string signer = 2;
|
||||
repeated cosmos.base.v1beta1.Coin coins = 3 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins",
|
||||
(gogoproto.moretags) = "json:\"coins\" yaml:\"coins\""
|
||||
];
|
||||
}
|
||||
|
||||
// MsgRefillBondResponse defines the Msg/RefillBond response type.
|
||||
message MsgRefillBondResponse{
|
||||
}
|
||||
|
||||
// MsgWithdrawBond defines a SDK message for withdrawing amount from bond.
|
||||
message MsgWithdrawBond {
|
||||
string id = 1;
|
||||
string signer = 2;
|
||||
repeated cosmos.base.v1beta1.Coin coins = 3 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins",
|
||||
(gogoproto.moretags) = "json:\"coins\" yaml:\"coins\""
|
||||
];
|
||||
}
|
||||
|
||||
// MsgWithdrawBondResponse defines the Msg/WithdrawBond response type.
|
||||
message MsgWithdrawBondResponse{
|
||||
}
|
||||
|
||||
// MsgCancelBond defines a SDK message for the cancel the bond.
|
||||
message MsgCancelBond{
|
||||
string id = 1;
|
||||
string signer = 2;
|
||||
}
|
||||
|
||||
// MsgCancelBondResponse defines the Msg/CancelBond response type.
|
||||
message MsgCancelBondResponse{
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.nameservice.v1beta1;
|
||||
|
||||
import "gogoproto/gogo.proto";
|
||||
import "vulcanize/nameservice/v1beta1/nameservice.proto";
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/nameservice/types";
|
||||
|
||||
// GenesisState defines the nameservice module's genesis state.
|
||||
message GenesisState {
|
||||
// params defines all the params of nameservice module.
|
||||
Params params = 1 [
|
||||
(gogoproto.nullable) = false
|
||||
];
|
||||
// records
|
||||
repeated Record records = 2 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"records\" yaml:\"records\""
|
||||
];
|
||||
// authorities
|
||||
repeated AuthorityEntry authorities = 3 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"authorities\" yaml:\"authorities\""
|
||||
];
|
||||
// names
|
||||
repeated NameEntry names = 4 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"names\" yaml:\"names\""
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,170 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.nameservice.v1beta1;
|
||||
|
||||
import "google/protobuf/duration.proto";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "gogoproto/gogo.proto";
|
||||
import "cosmos/base/v1beta1/coin.proto";
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/nameservice/types";
|
||||
|
||||
// Params defines the nameservice module parameters
|
||||
message Params {
|
||||
cosmos.base.v1beta1.Coin record_rent = 1 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"record_rent\" yaml:\"record_rent\""
|
||||
];
|
||||
google.protobuf.Duration record_rent_duration = 2 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.stdduration) = true,
|
||||
(gogoproto.moretags) = "json:\"record_rent_duration\" yaml:\"record_rent_duration\""
|
||||
];
|
||||
cosmos.base.v1beta1.Coin authority_rent = 3 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"authority_rent\" yaml:\"authority_rent\""
|
||||
];
|
||||
google.protobuf.Duration authority_rent_duration = 4 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.stdduration) = true,
|
||||
(gogoproto.moretags) = "json:\"authority_rent_duration\" yaml:\"authority_rent_duration\""
|
||||
];
|
||||
google.protobuf.Duration authority_grace_period = 5 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.stdduration) = true,
|
||||
(gogoproto.moretags) = "json:\"authority_grace_period\" yaml:\"authority_grace_period\""
|
||||
];
|
||||
bool authority_auction_enabled = 6 [
|
||||
(gogoproto.moretags) = "json:\"authority_auction_enabled\" yaml:\"authority_auction_enabled\""
|
||||
];
|
||||
google.protobuf.Duration authority_auction_commits_duration = 7 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.stdduration) = true,
|
||||
(gogoproto.moretags) = "json:\"authority_auction_commits_duration\" yaml:\"authority_auction_commits_duration\""
|
||||
];
|
||||
google.protobuf.Duration authority_auction_reveals_duration = 8 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.stdduration) = true,
|
||||
(gogoproto.moretags) = "json:\"authority_auction_reveals_duration\" yaml:\"authority_auction_reveals_duration\""
|
||||
];
|
||||
cosmos.base.v1beta1.Coin authority_auction_commit_fee = 9 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"authority_auction_commit_fee\" yaml:\"authority_auction_commit_fee\""
|
||||
];
|
||||
cosmos.base.v1beta1.Coin authority_auction_reveal_fee = 10 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"authority_auction_reveal_fee\" yaml:\"authority_auction_reveal_fee\""
|
||||
];
|
||||
cosmos.base.v1beta1.Coin authority_auction_minimum_bid = 11 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"authority_auction_minimum_bid\" yaml:\"authority_auction_minimum_bid\""
|
||||
];
|
||||
}
|
||||
|
||||
// Params defines the nameservice module records
|
||||
message Record {
|
||||
string id = 1 [
|
||||
(gogoproto.moretags) = "json:\"id\" yaml:\"id\""
|
||||
];
|
||||
string bond_id = 2 [
|
||||
(gogoproto.moretags) = "json:\"bondId\" yaml:\"bondId\""
|
||||
];
|
||||
google.protobuf.Timestamp create_time = 3 [
|
||||
(gogoproto.stdtime) = true,
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"createTime\" yaml:\"createTime\""
|
||||
];
|
||||
google.protobuf.Timestamp expiry_time = 4 [
|
||||
(gogoproto.stdtime) = true,
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"expiryTime\" yaml:\"expiryTime\""
|
||||
];
|
||||
bool deleted = 5;
|
||||
repeated string owners = 6 [
|
||||
(gogoproto.moretags) = "json:\"owners\" yaml:\"owners\""
|
||||
];
|
||||
bytes attributes = 7 [
|
||||
(gogoproto.moretags) = "json:\"attributes\" yaml:\"attributes\""
|
||||
];
|
||||
}
|
||||
|
||||
// AuthorityEntry defines the nameservice module AuthorityEntries
|
||||
message AuthorityEntry{
|
||||
string name = 1;
|
||||
NameAuthority entry = 2;
|
||||
}
|
||||
|
||||
// NameAuthority
|
||||
message NameAuthority {
|
||||
// Owner public key.
|
||||
string owner_public_key = 1 [
|
||||
(gogoproto.moretags) = "json:\"ownerPublicKey\" yaml:\"ownerPublicKey\""
|
||||
];
|
||||
// Owner address.
|
||||
string owner_address = 2 [
|
||||
(gogoproto.moretags) = "json:\"ownerAddress\" yaml:\"ownerAddress\""
|
||||
];
|
||||
// height at which name/authority was created.
|
||||
uint64 height = 3;
|
||||
string status = 4;
|
||||
string auction_id = 5 [
|
||||
(gogoproto.moretags) = "json:\"auctionID\" yaml:\"auctionID\""
|
||||
];
|
||||
string bond_id = 6 [
|
||||
(gogoproto.moretags) = "json:\"bondID\" yaml:\"bondID\""
|
||||
];
|
||||
google.protobuf.Timestamp expiry_time = 7 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.stdtime) = true,
|
||||
(gogoproto.moretags) = "json:\"expiryTime\" yaml:\"expiryTime\""
|
||||
];
|
||||
}
|
||||
|
||||
// NameEntry
|
||||
message NameEntry{
|
||||
string name = 1;
|
||||
NameRecord entry = 2;
|
||||
}
|
||||
|
||||
// NameRecord
|
||||
message NameRecord {
|
||||
NameRecordEntry latest = 1;
|
||||
repeated NameRecordEntry history = 2;
|
||||
}
|
||||
|
||||
// NameRecordEntry
|
||||
message NameRecordEntry{
|
||||
string id = 1;
|
||||
uint64 height = 2;
|
||||
}
|
||||
|
||||
// Signature
|
||||
message Signature{
|
||||
string sig = 1 [
|
||||
(gogoproto.moretags) = "json:\"sig\" yaml:\"sig\""
|
||||
];
|
||||
string pub_key = 2 [
|
||||
(gogoproto.moretags) = "json:\"pubKey\" yaml:\"pubKey\""
|
||||
];
|
||||
}
|
||||
|
||||
// BlockChangeSet
|
||||
message BlockChangeSet{
|
||||
int64 height = 1;
|
||||
repeated string records = 2;
|
||||
repeated string auctions = 3;
|
||||
repeated AuctionBidInfo auction_bids = 4 [
|
||||
(gogoproto.moretags) = "json:\"auctionBids\" yaml:\"auctionBids\""
|
||||
];
|
||||
repeated string authorities = 5;
|
||||
repeated string names = 6;
|
||||
}
|
||||
|
||||
// AuctionBidInfo
|
||||
message AuctionBidInfo {
|
||||
string auction_id = 1 [
|
||||
(gogoproto.moretags) = "json:\"auctionID\" yaml:\"auctionID\""
|
||||
];
|
||||
string bidder_address = 2 [
|
||||
(gogoproto.moretags) = "json:\"bidderAddress\" yaml:\"bidderAddress\""
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,211 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.nameservice.v1beta1;
|
||||
|
||||
import "vulcanize/nameservice/v1beta1/nameservice.proto";
|
||||
import "google/api/annotations.proto";
|
||||
import "cosmos/base/query/v1beta1/pagination.proto";
|
||||
import "gogoproto/gogo.proto";
|
||||
import "cosmos/base/v1beta1/coin.proto";
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/nameservice/types";
|
||||
|
||||
// Query defines the gRPC querier service for nameservice module
|
||||
service Query {
|
||||
// Params queries the nameservice module params.
|
||||
rpc Params(QueryParamsRequest) returns (QueryParamsResponse) {
|
||||
option (google.api.http).get = "/vulcanize/nameservice/v1beta1/params";
|
||||
}
|
||||
// List records
|
||||
rpc ListRecords(QueryListRecordsRequest) returns (QueryListRecordsResponse){
|
||||
option (google.api.http).get = "/vulcanize/nameservice/v1beta1/records";
|
||||
}
|
||||
// Get record by id
|
||||
rpc GetRecord(QueryRecordByIdRequest) returns (QueryRecordByIdResponse){
|
||||
option (google.api.http).get = "/vulcanize/nameservice/v1beta1/records/{id}";
|
||||
}
|
||||
// Get records by bond id
|
||||
rpc GetRecordByBondId(QueryRecordByBondIdRequest) returns (QueryRecordByBondIdResponse){
|
||||
option (google.api.http).get = "/vulcanize/nameservice/v1beta1/records-by-bond-id/{id}";
|
||||
}
|
||||
// Get nameservice module balance
|
||||
rpc GetNameServiceModuleBalance(GetNameServiceModuleBalanceRequest) returns (GetNameServiceModuleBalanceResponse){
|
||||
option (google.api.http).get = "/vulcanize/nameservice/v1beta1/balance";
|
||||
}
|
||||
// List name records
|
||||
rpc ListNameRecords(QueryListNameRecordsRequest) returns (QueryListNameRecordsResponse){
|
||||
option (google.api.http).get = "/vulcanize/nameservice/v1beta1/names";
|
||||
}
|
||||
// Whois method retrieve the name authority info
|
||||
rpc Whois(QueryWhoisRequest) returns (QueryWhoisResponse){
|
||||
option (google.api.http).get = "/vulcanize/nameservice/v1beta1/whois/{name}";
|
||||
}
|
||||
// LookupWrn
|
||||
rpc LookupWrn(QueryLookupWrn) returns (QueryLookupWrnResponse){
|
||||
option (google.api.http).get = "/vulcanize/nameservice/v1beta1/lookup";
|
||||
}
|
||||
// ResolveWrn
|
||||
rpc ResolveWrn(QueryResolveWrn) returns (QueryResolveWrnResponse){
|
||||
option (google.api.http).get = "/vulcanize/nameservice/v1beta1/resolve";
|
||||
}
|
||||
// GetRecordExpiryQueue
|
||||
rpc GetRecordExpiryQueue(QueryGetRecordExpiryQueue) returns (QueryGetRecordExpiryQueueResponse){
|
||||
option (google.api.http).get = "/vulcanize/nameservice/v1beta1/record-expiry";
|
||||
}
|
||||
// GetAuthorityExpiryQueue
|
||||
rpc GetAuthorityExpiryQueue(QueryGetAuthorityExpiryQueue) returns (QueryGetAuthorityExpiryQueueResponse){
|
||||
option (google.api.http).get = "/vulcanize/nameservice/v1beta1/authority-expiry";
|
||||
}
|
||||
}
|
||||
|
||||
// QueryParamsRequest is request type for nameservice params
|
||||
message QueryParamsRequest{
|
||||
}
|
||||
|
||||
// QueryParamsResponse is response type for nameservice params
|
||||
message QueryParamsResponse{
|
||||
Params params = 1;
|
||||
}
|
||||
|
||||
// QueryListRecordsRequest is request type for nameservice records list
|
||||
message QueryListRecordsRequest{
|
||||
// pagination defines an optional pagination for the request.
|
||||
cosmos.base.query.v1beta1.PageRequest pagination = 1;
|
||||
}
|
||||
|
||||
// QueryListRecordsResponse is response type for nameservice records list
|
||||
message QueryListRecordsResponse{
|
||||
repeated Record records = 1 [
|
||||
(gogoproto.nullable) = false
|
||||
];
|
||||
// pagination defines the pagination in the response.
|
||||
cosmos.base.query.v1beta1.PageResponse pagination = 2;
|
||||
}
|
||||
|
||||
//QueryRecordByIdRequest is request type for nameservice records by id
|
||||
message QueryRecordByIdRequest{
|
||||
string id = 1 ;
|
||||
}
|
||||
|
||||
// QueryRecordByIdResponse is response type for nameservice records by id
|
||||
message QueryRecordByIdResponse{
|
||||
Record record = 1[
|
||||
(gogoproto.nullable) = false
|
||||
];
|
||||
}
|
||||
|
||||
// QueryRecordByBondIdRequest is request type for get the records by bond-id
|
||||
message QueryRecordByBondIdRequest{
|
||||
string id = 1;
|
||||
// pagination defines an optional pagination for the request.
|
||||
cosmos.base.query.v1beta1.PageRequest pagination = 2;
|
||||
}
|
||||
|
||||
// QueryRecordByBondIdResponse is response type for records list by bond-id
|
||||
message QueryRecordByBondIdResponse{
|
||||
repeated Record records = 1 [
|
||||
(gogoproto.nullable) = false
|
||||
];
|
||||
// pagination defines the pagination in the response.
|
||||
cosmos.base.query.v1beta1.PageResponse pagination = 2;
|
||||
}
|
||||
|
||||
// GetNameServiceModuleBalanceRequest is request type for nameservice module accounts balance
|
||||
message GetNameServiceModuleBalanceRequest{
|
||||
}
|
||||
|
||||
// GetNameServiceModuleBalanceResponse is response type for nameservice module accounts balance
|
||||
message GetNameServiceModuleBalanceResponse{
|
||||
repeated AccountBalance balances = 1;
|
||||
}
|
||||
|
||||
// AccountBalance is nameservice module account balance
|
||||
message AccountBalance {
|
||||
string account_name = 1 [
|
||||
(gogoproto.moretags) = "json:\"accountName\" yaml:\"accountName\""
|
||||
];
|
||||
repeated cosmos.base.v1beta1.Coin balance = 3 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins",
|
||||
(gogoproto.moretags) = "json:\"balance\" yaml:\"balance\""
|
||||
];
|
||||
}
|
||||
|
||||
// QueryListNameRecordsRequest is request type for nameservice names records
|
||||
message QueryListNameRecordsRequest{
|
||||
// pagination defines an optional pagination for the request.
|
||||
cosmos.base.query.v1beta1.PageRequest pagination = 1;
|
||||
}
|
||||
|
||||
// QueryListNameRecordsResponse is response type for nameservice names records
|
||||
message QueryListNameRecordsResponse{
|
||||
repeated NameEntry names = 1 [
|
||||
(gogoproto.nullable) = false
|
||||
];
|
||||
// pagination defines the pagination in the response.
|
||||
cosmos.base.query.v1beta1.PageResponse pagination = 2;
|
||||
}
|
||||
|
||||
// QueryWhoisRequest is request type for Get NameAuthority
|
||||
message QueryWhoisRequest{
|
||||
string name = 1;
|
||||
}
|
||||
|
||||
// QueryWhoisResponse is response type for whois request
|
||||
message QueryWhoisResponse{
|
||||
NameAuthority name_authority = 1 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"nameAuthority\" yaml:\"nameAuthority\""
|
||||
];
|
||||
}
|
||||
|
||||
// QueryLookupWrn is request type for LookupWrn
|
||||
message QueryLookupWrn{
|
||||
string wrn = 1;
|
||||
}
|
||||
|
||||
// QueryLookupWrnResponse is response type for QueryLookupWrn
|
||||
message QueryLookupWrnResponse{
|
||||
NameRecord name = 1;
|
||||
}
|
||||
|
||||
// QueryResolveWrn is request type for ResolveWrn
|
||||
message QueryResolveWrn{
|
||||
string wrn = 1;
|
||||
}
|
||||
|
||||
// QueryResolveWrnResponse is response type for QueryResolveWrn
|
||||
message QueryResolveWrnResponse{
|
||||
Record record = 1;
|
||||
}
|
||||
|
||||
// QueryGetRecordExpiryQueue
|
||||
message QueryGetRecordExpiryQueue{
|
||||
// pagination defines an optional pagination for the request.
|
||||
cosmos.base.query.v1beta1.PageRequest pagination = 1;
|
||||
}
|
||||
|
||||
// QueryGetRecordExpiryQueueResponse
|
||||
message QueryGetRecordExpiryQueueResponse{
|
||||
repeated ExpiryQueueRecord records = 1;
|
||||
// pagination defines the pagination in the response.
|
||||
cosmos.base.query.v1beta1.PageResponse pagination = 2;
|
||||
}
|
||||
|
||||
// ExpiryQueueRecord
|
||||
message ExpiryQueueRecord{
|
||||
string id = 1;
|
||||
repeated string value = 2;
|
||||
}
|
||||
|
||||
// QueryGetAuthorityExpiryQueue
|
||||
message QueryGetAuthorityExpiryQueue{
|
||||
// pagination defines an optional pagination for the request.
|
||||
cosmos.base.query.v1beta1.PageRequest pagination = 1;
|
||||
}
|
||||
|
||||
// QueryGetAuthorityExpiryQueueResponse
|
||||
message QueryGetAuthorityExpiryQueueResponse{
|
||||
repeated ExpiryQueueRecord authorities = 1;
|
||||
// pagination defines the pagination in the response.
|
||||
cosmos.base.query.v1beta1.PageResponse pagination = 2;
|
||||
}
|
||||
@@ -0,0 +1,167 @@
|
||||
syntax = "proto3";
|
||||
package vulcanize.nameservice.v1beta1;
|
||||
|
||||
import "gogoproto/gogo.proto";
|
||||
import "vulcanize/nameservice/v1beta1/nameservice.proto";
|
||||
|
||||
option go_package = "github.com/tharsis/ethermint/x/nameservice/types";
|
||||
|
||||
// Msg
|
||||
service Msg {
|
||||
// SetRecord will records a new record with given payload and bond id
|
||||
rpc SetRecord(MsgSetRecord) returns(MsgSetRecordResponse){}
|
||||
// Renew Record will renew the expire record
|
||||
rpc RenewRecord(MsgRenewRecord) returns (MsgRenewRecordResponse){}
|
||||
// AssociateBond
|
||||
rpc AssociateBond(MsgAssociateBond) returns (MsgAssociateBondResponse){}
|
||||
// DissociateBond
|
||||
rpc DissociateBond(MsgDissociateBond) returns (MsgDissociateBondResponse){}
|
||||
// DissociateRecords
|
||||
rpc DissociateRecords(MsgDissociateRecords) returns (MsgDissociateRecordsResponse){}
|
||||
// ReAssociateRecords
|
||||
rpc ReAssociateRecords(MsgReAssociateRecords) returns (MsgReAssociateRecordsResponse){}
|
||||
// SetName will store the name with given wrn and name
|
||||
rpc SetName(MsgSetName) returns (MsgSetNameResponse){}
|
||||
// Reserve name
|
||||
rpc ReserveName(MsgReserveAuthority) returns (MsgReserveAuthorityResponse){}
|
||||
// Delete Name method will remove authority name
|
||||
rpc DeleteName(MsgDeleteNameAuthority) returns (MsgDeleteNameAuthorityResponse){}
|
||||
// SetAuthorityBond
|
||||
rpc SetAuthorityBond(MsgSetAuthorityBond) returns (MsgSetAuthorityBondResponse){}
|
||||
}
|
||||
|
||||
// MsgSetRecord
|
||||
message MsgSetRecord{
|
||||
string bond_id = 1 [
|
||||
(gogoproto.moretags) = "json:\"bondId\" yaml:\"bondId\""
|
||||
];
|
||||
string signer = 2;
|
||||
Payload payload = 3 [
|
||||
(gogoproto.nullable) = false
|
||||
];
|
||||
}
|
||||
|
||||
// MsgSetRecordResponse
|
||||
message MsgSetRecordResponse{
|
||||
}
|
||||
|
||||
// Payload
|
||||
message Payload {
|
||||
Record record = 1;
|
||||
repeated Signature signatures = 2 [
|
||||
(gogoproto.nullable) = false,
|
||||
(gogoproto.moretags) = "json:\"signatures\" yaml:\"signatures\""
|
||||
];
|
||||
}
|
||||
|
||||
// MsgSetName
|
||||
message MsgSetName{
|
||||
string wrn = 1;
|
||||
string cid = 2;
|
||||
string signer = 3;
|
||||
}
|
||||
|
||||
// MsgSetNameResponse
|
||||
message MsgSetNameResponse{
|
||||
}
|
||||
|
||||
// MsgReserveName
|
||||
message MsgReserveAuthority{
|
||||
string name = 1;
|
||||
string signer = 2;
|
||||
// if creating a sub-authority.
|
||||
string owner = 3;
|
||||
}
|
||||
|
||||
// MsgReserveNameResponse
|
||||
message MsgReserveAuthorityResponse{
|
||||
}
|
||||
|
||||
// MsgSetAuthorityBond is SDK message for SetAuthorityBond
|
||||
message MsgSetAuthorityBond{
|
||||
string name = 1;
|
||||
string bond_id = 2 [
|
||||
(gogoproto.moretags) = "json:\"bondId\" yaml:\"bondId\""
|
||||
];
|
||||
string signer = 3;
|
||||
}
|
||||
|
||||
// MsgSetAuthorityBondResponse
|
||||
message MsgSetAuthorityBondResponse{
|
||||
}
|
||||
|
||||
// MsgDeleteNameAuthority is SDK message for DeleteNameAuthority
|
||||
message MsgDeleteNameAuthority{
|
||||
string wrn = 1;
|
||||
string signer = 2;
|
||||
}
|
||||
|
||||
// MsgDeleteNameAuthorityResponse
|
||||
message MsgDeleteNameAuthorityResponse{
|
||||
}
|
||||
|
||||
//MsgRenewRecord is SDK message for Renew a record
|
||||
message MsgRenewRecord{
|
||||
string record_id = 1 [
|
||||
(gogoproto.moretags) = "json:\"recordId\" yaml:\"recordId\""
|
||||
];
|
||||
string signer = 2;
|
||||
}
|
||||
|
||||
// MsgRenewRecordResponse
|
||||
message MsgRenewRecordResponse{
|
||||
}
|
||||
|
||||
// MsgAssociateBond
|
||||
message MsgAssociateBond{
|
||||
string record_id = 1 [
|
||||
(gogoproto.moretags) = "json:\"recordId\" yaml:\"recordId\""
|
||||
];
|
||||
string bond_id = 2 [
|
||||
(gogoproto.moretags) = "json:\"bondId\" yaml:\"bondId\""
|
||||
];
|
||||
string signer = 3;
|
||||
}
|
||||
|
||||
// MsgAssociateBondResponse
|
||||
message MsgAssociateBondResponse{
|
||||
}
|
||||
|
||||
// MsgDissociateBond is SDK message for Msg/DissociateBond
|
||||
message MsgDissociateBond{
|
||||
string record_id = 1 [
|
||||
(gogoproto.moretags) = "json:\"recordId\" yaml:\"recordId\""
|
||||
];
|
||||
string signer = 2;
|
||||
}
|
||||
|
||||
// MsgDissociateBondResponse is response type for MsgDissociateBond
|
||||
message MsgDissociateBondResponse{
|
||||
}
|
||||
|
||||
// MsgDissociateRecords is SDK message for Msg/DissociateRecords
|
||||
message MsgDissociateRecords{
|
||||
string bond_id = 1 [
|
||||
(gogoproto.moretags) = "json:\"bondId\" yaml:\"bondId\""
|
||||
];
|
||||
string signer = 2;
|
||||
}
|
||||
|
||||
// MsgDissociateRecordsResponse is response type for MsgDissociateRecords
|
||||
message MsgDissociateRecordsResponse{
|
||||
}
|
||||
|
||||
// MsgReAssociateRecords is SDK message for Msg/ReAssociateRecords
|
||||
message MsgReAssociateRecords{
|
||||
string new_bond_id = 1 [
|
||||
(gogoproto.moretags) = "json:\"newBondId\" yaml:\"newBondId\""
|
||||
];
|
||||
string old_bond_id = 2 [
|
||||
(gogoproto.moretags) = "json:\"oldBondId\" yaml:\"oldBondId\""
|
||||
];
|
||||
string signer = 3;
|
||||
}
|
||||
|
||||
// MsgReAssociateRecordsResponse is response type for MsgReAssociateRecords
|
||||
message MsgReAssociateRecordsResponse{
|
||||
}
|
||||
Reference in New Issue
Block a user