2022-12-09 21:24:35 +00:00
|
|
|
package keeper
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
|
|
|
|
sdk "github.com/cosmos/cosmos-sdk/types"
|
|
|
|
"github.com/kava-labs/kava/x/community/types"
|
|
|
|
)
|
|
|
|
|
|
|
|
type queryServer struct {
|
|
|
|
keeper Keeper
|
|
|
|
}
|
|
|
|
|
|
|
|
var _ types.QueryServer = queryServer{}
|
|
|
|
|
|
|
|
// NewQueryServerImpl creates a new server for handling gRPC queries.
|
|
|
|
func NewQueryServerImpl(k Keeper) types.QueryServer {
|
|
|
|
return &queryServer{keeper: k}
|
|
|
|
}
|
|
|
|
|
2022-12-19 21:56:46 +00:00
|
|
|
// Balance implements the gRPC service handler for querying x/community balance.
|
2022-12-09 21:24:35 +00:00
|
|
|
func (s queryServer) Balance(c context.Context, _ *types.QueryBalanceRequest) (*types.QueryBalanceResponse, error) {
|
|
|
|
ctx := sdk.UnwrapSDKContext(c)
|
|
|
|
return &types.QueryBalanceResponse{
|
|
|
|
Coins: s.keeper.GetModuleAccountBalance(ctx),
|
|
|
|
}, nil
|
|
|
|
}
|
2022-12-19 21:56:46 +00:00
|
|
|
|
|
|
|
// LegacyCommunityPool implements the gRPC service handler for querying the legacy community pool balance.
|
|
|
|
func (s queryServer) LegacyCommunityPool(c context.Context, _ *types.QueryLegacyCommunityPoolRequest) (*types.QueryLegacyCommunityPoolResponse, error) {
|
|
|
|
ctx := sdk.UnwrapSDKContext(c)
|
|
|
|
balance := s.keeper.distrKeeper.GetFeePoolCommunityCoins(ctx)
|
|
|
|
return &types.QueryLegacyCommunityPoolResponse{
|
|
|
|
Address: s.keeper.legacyCommunityPoolAddress.String(),
|
|
|
|
Balance: balance,
|
|
|
|
}, nil
|
|
|
|
}
|