planetmint-go/x/asset/keeper/query_address.go
Lorenz Herzberger f299b6c3e4
fix: adjust call to GetAssetsByAddress with numElements + 1 because store.ReverseIterator is exclusive
Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>
2024-06-03 09:31:25 +02:00

28 lines
822 B
Go

package keeper
import (
"context"
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/planetmint/planetmint-go/errormsg"
"github.com/planetmint/planetmint-go/util"
"github.com/planetmint/planetmint-go/x/asset/types"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
)
func (k Keeper) GetCIDsByAddress(goCtx context.Context, req *types.QueryGetCIDsByAddressRequest) (*types.QueryGetCIDsByAddressResponse, error) {
if req == nil {
return nil, status.Error(codes.InvalidArgument, errormsg.InvalidRequest)
}
ctx := sdk.UnwrapSDKContext(goCtx)
cids, found := k.GetAssetsByAddress(ctx, req.GetAddress(), nil, util.SerializeUint64(req.GetNumElements()+1))
if !found {
return nil, status.Error(codes.NotFound, "no CIDs found")
}
return &types.QueryGetCIDsByAddressResponse{Cids: cids}, nil
}