Add methods to update laconic module params (#57)
Some checks failed
Integration Tests / test-integration (push) Successful in 2m42s
E2E Tests / test-e2e (push) Successful in 4m23s
Unit Tests / test-unit (push) Successful in 2m39s
SDK Tests / sdk_tests_nameservice_expiry (push) Successful in 10m14s
SDK Tests / sdk_tests (push) Failing after 11m55s
SDK Tests / sdk_tests_auctions (push) Successful in 15m48s

Part of [Add gov module to laconicd](https://www.notion.so/Add-gov-module-to-laconicd-938c9f5f87634b4fbd7896d3907fb89e)

- Add methods to update params for `bond`, `registry` and `auction` modules

Co-authored-by: IshaVenikar <ishavenikar7@gmail.com>
Reviewed-on: #57
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
This commit is contained in:
Prathamesh Musale 2024-09-05 07:07:54 +00:00 committed by ashwin
parent a01a5d24d1
commit 94ba057807
33 changed files with 5466 additions and 718 deletions

View File

@ -14,12 +14,14 @@ import (
)
var (
md_Module protoreflect.MessageDescriptor
md_Module protoreflect.MessageDescriptor
fd_Module_authority protoreflect.FieldDescriptor
)
func init() {
file_cerc_auction_module_v1_module_proto_init()
md_Module = File_cerc_auction_module_v1_module_proto.Messages().ByName("Module")
fd_Module_authority = md_Module.Fields().ByName("authority")
}
var _ protoreflect.Message = (*fastReflection_Module)(nil)
@ -87,6 +89,12 @@ func (x *fastReflection_Module) Interface() protoreflect.ProtoMessage {
// While iterating, mutating operations may only be performed
// on the current field descriptor.
func (x *fastReflection_Module) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
if x.Authority != "" {
value := protoreflect.ValueOfString(x.Authority)
if !f(fd_Module_authority, value) {
return
}
}
}
// Has reports whether a field is populated.
@ -102,6 +110,8 @@ func (x *fastReflection_Module) Range(f func(protoreflect.FieldDescriptor, proto
// a repeated field is populated if it is non-empty.
func (x *fastReflection_Module) Has(fd protoreflect.FieldDescriptor) bool {
switch fd.FullName() {
case "cerc.auction.module.v1.Module.authority":
return x.Authority != ""
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.auction.module.v1.Module"))
@ -118,6 +128,8 @@ func (x *fastReflection_Module) Has(fd protoreflect.FieldDescriptor) bool {
// Clear is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Module) Clear(fd protoreflect.FieldDescriptor) {
switch fd.FullName() {
case "cerc.auction.module.v1.Module.authority":
x.Authority = ""
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.auction.module.v1.Module"))
@ -134,6 +146,9 @@ func (x *fastReflection_Module) Clear(fd protoreflect.FieldDescriptor) {
// of the value; to obtain a mutable reference, use Mutable.
func (x *fastReflection_Module) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
switch descriptor.FullName() {
case "cerc.auction.module.v1.Module.authority":
value := x.Authority
return protoreflect.ValueOfString(value)
default:
if descriptor.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.auction.module.v1.Module"))
@ -154,6 +169,8 @@ func (x *fastReflection_Module) Get(descriptor protoreflect.FieldDescriptor) pro
// Set is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Module) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
switch fd.FullName() {
case "cerc.auction.module.v1.Module.authority":
x.Authority = value.Interface().(string)
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.auction.module.v1.Module"))
@ -174,6 +191,8 @@ func (x *fastReflection_Module) Set(fd protoreflect.FieldDescriptor, value proto
// Mutable is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Module) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "cerc.auction.module.v1.Module.authority":
panic(fmt.Errorf("field authority of message cerc.auction.module.v1.Module is not mutable"))
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.auction.module.v1.Module"))
@ -187,6 +206,8 @@ func (x *fastReflection_Module) Mutable(fd protoreflect.FieldDescriptor) protore
// For lists, maps, and messages, this returns a new, empty, mutable value.
func (x *fastReflection_Module) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "cerc.auction.module.v1.Module.authority":
return protoreflect.ValueOfString("")
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.auction.module.v1.Module"))
@ -256,6 +277,10 @@ func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
var n int
var l int
_ = l
l = len(x.Authority)
if l > 0 {
n += 1 + l + runtime.Sov(uint64(l))
}
if x.unknownFields != nil {
n += len(x.unknownFields)
}
@ -285,6 +310,13 @@ func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
i -= len(x.unknownFields)
copy(dAtA[i:], x.unknownFields)
}
if len(x.Authority) > 0 {
i -= len(x.Authority)
copy(dAtA[i:], x.Authority)
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Authority)))
i--
dAtA[i] = 0x12
}
if input.Buf != nil {
input.Buf = append(input.Buf, dAtA...)
} else {
@ -334,6 +366,38 @@ func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Module: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 2:
if wireType != 2 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
}
if iNdEx >= l {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
}
if postIndex > l {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
}
x.Authority = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := runtime.Skip(dAtA[iNdEx:])
@ -388,6 +452,10 @@ type Module struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// authority defines the custom module authority. If not set, defaults to the
// governance module.
Authority string `protobuf:"bytes,2,opt,name=authority,proto3" json:"authority,omitempty"`
}
func (x *Module) Reset() {
@ -410,6 +478,13 @@ func (*Module) Descriptor() ([]byte, []int) {
return file_cerc_auction_module_v1_module_proto_rawDescGZIP(), []int{0}
}
func (x *Module) GetAuthority() string {
if x != nil {
return x.Authority
}
return ""
}
var File_cerc_auction_module_v1_module_proto protoreflect.FileDescriptor
var file_cerc_auction_module_v1_module_proto_rawDesc = []byte{
@ -419,25 +494,27 @@ var file_cerc_auction_module_v1_module_proto_rawDesc = []byte{
0x69, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x20, 0x63,
0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x61, 0x70, 0x70, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
0x61, 0x31, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
0x37, 0x0a, 0x06, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x2d, 0xba, 0xc0, 0x96, 0xda, 0x01,
0x27, 0x0a, 0x25, 0x67, 0x69, 0x74, 0x2e, 0x76, 0x64, 0x62, 0x2e, 0x74, 0x6f, 0x2f, 0x63, 0x65,
0x72, 0x63, 0x2d, 0x69, 0x6f, 0x2f, 0x6c, 0x61, 0x63, 0x6f, 0x6e, 0x69, 0x63, 0x64, 0x2f, 0x78,
0x2f, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0xe5, 0x01, 0x0a, 0x1a, 0x63, 0x6f, 0x6d,
0x2e, 0x63, 0x65, 0x72, 0x63, 0x2e, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f,
0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50,
0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3f, 0x67, 0x69, 0x74, 0x2e, 0x76, 0x64, 0x62, 0x2e,
0x74, 0x6f, 0x2f, 0x63, 0x65, 0x72, 0x63, 0x2d, 0x69, 0x6f, 0x2f, 0x6c, 0x61, 0x63, 0x6f, 0x6e,
0x69, 0x63, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x65, 0x72, 0x63, 0x2f, 0x61, 0x75, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x6d,
0x6f, 0x64, 0x75, 0x6c, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x41, 0x4d, 0xaa, 0x02, 0x16,
0x43, 0x65, 0x72, 0x63, 0x2e, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4d, 0x6f, 0x64,
0x75, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x16, 0x43, 0x65, 0x72, 0x63, 0x5c, 0x41, 0x75,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0xe2,
0x02, 0x22, 0x43, 0x65, 0x72, 0x63, 0x5c, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x4d,
0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61,
0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x19, 0x43, 0x65, 0x72, 0x63, 0x3a, 0x3a, 0x41, 0x75, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x3a, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x55, 0x0a, 0x06, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74,
0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75,
0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x3a, 0x2d, 0xba, 0xc0, 0x96, 0xda, 0x01, 0x27, 0x0a,
0x25, 0x67, 0x69, 0x74, 0x2e, 0x76, 0x64, 0x62, 0x2e, 0x74, 0x6f, 0x2f, 0x63, 0x65, 0x72, 0x63,
0x2d, 0x69, 0x6f, 0x2f, 0x6c, 0x61, 0x63, 0x6f, 0x6e, 0x69, 0x63, 0x64, 0x2f, 0x78, 0x2f, 0x61,
0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0xe5, 0x01, 0x0a, 0x1a, 0x63, 0x6f, 0x6d, 0x2e, 0x63,
0x65, 0x72, 0x63, 0x2e, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x75,
0x6c, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f,
0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3f, 0x67, 0x69, 0x74, 0x2e, 0x76, 0x64, 0x62, 0x2e, 0x74, 0x6f,
0x2f, 0x63, 0x65, 0x72, 0x63, 0x2d, 0x69, 0x6f, 0x2f, 0x6c, 0x61, 0x63, 0x6f, 0x6e, 0x69, 0x63,
0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x65, 0x72, 0x63, 0x2f, 0x61, 0x75, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x6d, 0x6f, 0x64,
0x75, 0x6c, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x41, 0x4d, 0xaa, 0x02, 0x16, 0x43, 0x65,
0x72, 0x63, 0x2e, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c,
0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x16, 0x43, 0x65, 0x72, 0x63, 0x5c, 0x41, 0x75, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x22,
0x43, 0x65, 0x72, 0x63, 0x5c, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x4d, 0x6f, 0x64,
0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
0x74, 0x61, 0xea, 0x02, 0x19, 0x43, 0x65, 0x72, 0x63, 0x3a, 0x3a, 0x41, 0x75, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x3a, 0x3a, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (

File diff suppressed because it is too large Load Diff

View File

@ -22,6 +22,7 @@ const (
Msg_CreateAuction_FullMethodName = "/cerc.auction.v1.Msg/CreateAuction"
Msg_CommitBid_FullMethodName = "/cerc.auction.v1.Msg/CommitBid"
Msg_RevealBid_FullMethodName = "/cerc.auction.v1.Msg/RevealBid"
Msg_UpdateParams_FullMethodName = "/cerc.auction.v1.Msg/UpdateParams"
)
// MsgClient is the client API for Msg service.
@ -34,6 +35,9 @@ type MsgClient interface {
CommitBid(ctx context.Context, in *MsgCommitBid, opts ...grpc.CallOption) (*MsgCommitBidResponse, error)
// RevealBid is the command for revealing a bid
RevealBid(ctx context.Context, in *MsgRevealBid, opts ...grpc.CallOption) (*MsgRevealBidResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error)
}
type msgClient struct {
@ -71,6 +75,15 @@ func (c *msgClient) RevealBid(ctx context.Context, in *MsgRevealBid, opts ...grp
return out, nil
}
func (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) {
out := new(MsgUpdateParamsResponse)
err := c.cc.Invoke(ctx, Msg_UpdateParams_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// MsgServer is the server API for Msg service.
// All implementations must embed UnimplementedMsgServer
// for forward compatibility
@ -81,6 +94,9 @@ type MsgServer interface {
CommitBid(context.Context, *MsgCommitBid) (*MsgCommitBidResponse, error)
// RevealBid is the command for revealing a bid
RevealBid(context.Context, *MsgRevealBid) (*MsgRevealBidResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error)
mustEmbedUnimplementedMsgServer()
}
@ -97,6 +113,9 @@ func (UnimplementedMsgServer) CommitBid(context.Context, *MsgCommitBid) (*MsgCom
func (UnimplementedMsgServer) RevealBid(context.Context, *MsgRevealBid) (*MsgRevealBidResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method RevealBid not implemented")
}
func (UnimplementedMsgServer) UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateParams not implemented")
}
func (UnimplementedMsgServer) mustEmbedUnimplementedMsgServer() {}
// UnsafeMsgServer may be embedded to opt out of forward compatibility for this service.
@ -164,6 +183,24 @@ func _Msg_RevealBid_Handler(srv interface{}, ctx context.Context, dec func(inter
return interceptor(ctx, in, info, handler)
}
func _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(MsgUpdateParams)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MsgServer).UpdateParams(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: Msg_UpdateParams_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MsgServer).UpdateParams(ctx, req.(*MsgUpdateParams))
}
return interceptor(ctx, in, info, handler)
}
// Msg_ServiceDesc is the grpc.ServiceDesc for Msg service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@ -183,6 +220,10 @@ var Msg_ServiceDesc = grpc.ServiceDesc{
MethodName: "RevealBid",
Handler: _Msg_RevealBid_Handler,
},
{
MethodName: "UpdateParams",
Handler: _Msg_UpdateParams_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "cerc/auction/v1/tx.proto",

View File

@ -14,12 +14,14 @@ import (
)
var (
md_Module protoreflect.MessageDescriptor
md_Module protoreflect.MessageDescriptor
fd_Module_authority protoreflect.FieldDescriptor
)
func init() {
file_cerc_bond_module_v1_module_proto_init()
md_Module = File_cerc_bond_module_v1_module_proto.Messages().ByName("Module")
fd_Module_authority = md_Module.Fields().ByName("authority")
}
var _ protoreflect.Message = (*fastReflection_Module)(nil)
@ -87,6 +89,12 @@ func (x *fastReflection_Module) Interface() protoreflect.ProtoMessage {
// While iterating, mutating operations may only be performed
// on the current field descriptor.
func (x *fastReflection_Module) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
if x.Authority != "" {
value := protoreflect.ValueOfString(x.Authority)
if !f(fd_Module_authority, value) {
return
}
}
}
// Has reports whether a field is populated.
@ -102,6 +110,8 @@ func (x *fastReflection_Module) Range(f func(protoreflect.FieldDescriptor, proto
// a repeated field is populated if it is non-empty.
func (x *fastReflection_Module) Has(fd protoreflect.FieldDescriptor) bool {
switch fd.FullName() {
case "cerc.bond.module.v1.Module.authority":
return x.Authority != ""
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.bond.module.v1.Module"))
@ -118,6 +128,8 @@ func (x *fastReflection_Module) Has(fd protoreflect.FieldDescriptor) bool {
// Clear is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Module) Clear(fd protoreflect.FieldDescriptor) {
switch fd.FullName() {
case "cerc.bond.module.v1.Module.authority":
x.Authority = ""
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.bond.module.v1.Module"))
@ -134,6 +146,9 @@ func (x *fastReflection_Module) Clear(fd protoreflect.FieldDescriptor) {
// of the value; to obtain a mutable reference, use Mutable.
func (x *fastReflection_Module) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
switch descriptor.FullName() {
case "cerc.bond.module.v1.Module.authority":
value := x.Authority
return protoreflect.ValueOfString(value)
default:
if descriptor.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.bond.module.v1.Module"))
@ -154,6 +169,8 @@ func (x *fastReflection_Module) Get(descriptor protoreflect.FieldDescriptor) pro
// Set is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Module) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
switch fd.FullName() {
case "cerc.bond.module.v1.Module.authority":
x.Authority = value.Interface().(string)
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.bond.module.v1.Module"))
@ -174,6 +191,8 @@ func (x *fastReflection_Module) Set(fd protoreflect.FieldDescriptor, value proto
// Mutable is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Module) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "cerc.bond.module.v1.Module.authority":
panic(fmt.Errorf("field authority of message cerc.bond.module.v1.Module is not mutable"))
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.bond.module.v1.Module"))
@ -187,6 +206,8 @@ func (x *fastReflection_Module) Mutable(fd protoreflect.FieldDescriptor) protore
// For lists, maps, and messages, this returns a new, empty, mutable value.
func (x *fastReflection_Module) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "cerc.bond.module.v1.Module.authority":
return protoreflect.ValueOfString("")
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.bond.module.v1.Module"))
@ -256,6 +277,10 @@ func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
var n int
var l int
_ = l
l = len(x.Authority)
if l > 0 {
n += 1 + l + runtime.Sov(uint64(l))
}
if x.unknownFields != nil {
n += len(x.unknownFields)
}
@ -285,6 +310,13 @@ func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
i -= len(x.unknownFields)
copy(dAtA[i:], x.unknownFields)
}
if len(x.Authority) > 0 {
i -= len(x.Authority)
copy(dAtA[i:], x.Authority)
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Authority)))
i--
dAtA[i] = 0x12
}
if input.Buf != nil {
input.Buf = append(input.Buf, dAtA...)
} else {
@ -334,6 +366,38 @@ func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Module: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 2:
if wireType != 2 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
}
if iNdEx >= l {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
}
if postIndex > l {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
}
x.Authority = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := runtime.Skip(dAtA[iNdEx:])
@ -388,6 +452,10 @@ type Module struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// authority defines the custom module authority. If not set, defaults to the
// governance module.
Authority string `protobuf:"bytes,2,opt,name=authority,proto3" json:"authority,omitempty"`
}
func (x *Module) Reset() {
@ -410,6 +478,13 @@ func (*Module) Descriptor() ([]byte, []int) {
return file_cerc_bond_module_v1_module_proto_rawDescGZIP(), []int{0}
}
func (x *Module) GetAuthority() string {
if x != nil {
return x.Authority
}
return ""
}
var File_cerc_bond_module_v1_module_proto protoreflect.FileDescriptor
var file_cerc_bond_module_v1_module_proto_rawDesc = []byte{
@ -418,24 +493,26 @@ var file_cerc_bond_module_v1_module_proto_rawDesc = []byte{
0x74, 0x6f, 0x12, 0x13, 0x63, 0x65, 0x72, 0x63, 0x2e, 0x62, 0x6f, 0x6e, 0x64, 0x2e, 0x6d, 0x6f,
0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x20, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f,
0x61, 0x70, 0x70, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x6d, 0x6f, 0x64,
0x75, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x34, 0x0a, 0x06, 0x4d, 0x6f, 0x64,
0x75, 0x6c, 0x65, 0x3a, 0x2a, 0xba, 0xc0, 0x96, 0xda, 0x01, 0x24, 0x0a, 0x22, 0x67, 0x69, 0x74,
0x2e, 0x76, 0x64, 0x62, 0x2e, 0x74, 0x6f, 0x2f, 0x63, 0x65, 0x72, 0x63, 0x2d, 0x69, 0x6f, 0x2f,
0x6c, 0x61, 0x63, 0x6f, 0x6e, 0x69, 0x63, 0x64, 0x2f, 0x78, 0x2f, 0x62, 0x6f, 0x6e, 0x64, 0x42,
0xd3, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x65, 0x72, 0x63, 0x2e, 0x62, 0x6f, 0x6e,
0x64, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x4d, 0x6f, 0x64,
0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x69, 0x74, 0x2e,
0x76, 0x64, 0x62, 0x2e, 0x74, 0x6f, 0x2f, 0x63, 0x65, 0x72, 0x63, 0x2d, 0x69, 0x6f, 0x2f, 0x6c,
0x61, 0x63, 0x6f, 0x6e, 0x69, 0x63, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x65, 0x72, 0x63,
0x2f, 0x62, 0x6f, 0x6e, 0x64, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x3b,
0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x42, 0x4d, 0xaa, 0x02,
0x13, 0x43, 0x65, 0x72, 0x63, 0x2e, 0x42, 0x6f, 0x6e, 0x64, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c,
0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x13, 0x43, 0x65, 0x72, 0x63, 0x5c, 0x42, 0x6f, 0x6e, 0x64,
0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1f, 0x43, 0x65, 0x72,
0x63, 0x5c, 0x42, 0x6f, 0x6e, 0x64, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31,
0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x16, 0x43,
0x65, 0x72, 0x63, 0x3a, 0x3a, 0x42, 0x6f, 0x6e, 0x64, 0x3a, 0x3a, 0x4d, 0x6f, 0x64, 0x75, 0x6c,
0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x75, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x52, 0x0a, 0x06, 0x4d, 0x6f, 0x64,
0x75, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79,
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74,
0x79, 0x3a, 0x2a, 0xba, 0xc0, 0x96, 0xda, 0x01, 0x24, 0x0a, 0x22, 0x67, 0x69, 0x74, 0x2e, 0x76,
0x64, 0x62, 0x2e, 0x74, 0x6f, 0x2f, 0x63, 0x65, 0x72, 0x63, 0x2d, 0x69, 0x6f, 0x2f, 0x6c, 0x61,
0x63, 0x6f, 0x6e, 0x69, 0x63, 0x64, 0x2f, 0x78, 0x2f, 0x62, 0x6f, 0x6e, 0x64, 0x42, 0xd3, 0x01,
0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x65, 0x72, 0x63, 0x2e, 0x62, 0x6f, 0x6e, 0x64, 0x2e,
0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x4d, 0x6f, 0x64, 0x75, 0x6c,
0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x69, 0x74, 0x2e, 0x76, 0x64,
0x62, 0x2e, 0x74, 0x6f, 0x2f, 0x63, 0x65, 0x72, 0x63, 0x2d, 0x69, 0x6f, 0x2f, 0x6c, 0x61, 0x63,
0x6f, 0x6e, 0x69, 0x63, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x65, 0x72, 0x63, 0x2f, 0x62,
0x6f, 0x6e, 0x64, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x6d, 0x6f,
0x64, 0x75, 0x6c, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x42, 0x4d, 0xaa, 0x02, 0x13, 0x43,
0x65, 0x72, 0x63, 0x2e, 0x42, 0x6f, 0x6e, 0x64, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e,
0x56, 0x31, 0xca, 0x02, 0x13, 0x43, 0x65, 0x72, 0x63, 0x5c, 0x42, 0x6f, 0x6e, 0x64, 0x5c, 0x4d,
0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1f, 0x43, 0x65, 0x72, 0x63, 0x5c,
0x42, 0x6f, 0x6e, 0x64, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47,
0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x16, 0x43, 0x65, 0x72,
0x63, 0x3a, 0x3a, 0x42, 0x6f, 0x6e, 0x64, 0x3a, 0x3a, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a,
0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (

File diff suppressed because it is too large Load Diff

View File

@ -23,6 +23,7 @@ const (
Msg_RefillBond_FullMethodName = "/cerc.bond.v1.Msg/RefillBond"
Msg_WithdrawBond_FullMethodName = "/cerc.bond.v1.Msg/WithdrawBond"
Msg_CancelBond_FullMethodName = "/cerc.bond.v1.Msg/CancelBond"
Msg_UpdateParams_FullMethodName = "/cerc.bond.v1.Msg/UpdateParams"
)
// MsgClient is the client API for Msg service.
@ -37,6 +38,9 @@ type MsgClient interface {
WithdrawBond(ctx context.Context, in *MsgWithdrawBond, opts ...grpc.CallOption) (*MsgWithdrawBondResponse, error)
// CancelBond defines a method for cancelling a bond.
CancelBond(ctx context.Context, in *MsgCancelBond, opts ...grpc.CallOption) (*MsgCancelBondResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error)
}
type msgClient struct {
@ -83,6 +87,15 @@ func (c *msgClient) CancelBond(ctx context.Context, in *MsgCancelBond, opts ...g
return out, nil
}
func (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) {
out := new(MsgUpdateParamsResponse)
err := c.cc.Invoke(ctx, Msg_UpdateParams_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// MsgServer is the server API for Msg service.
// All implementations must embed UnimplementedMsgServer
// for forward compatibility
@ -95,6 +108,9 @@ type MsgServer interface {
WithdrawBond(context.Context, *MsgWithdrawBond) (*MsgWithdrawBondResponse, error)
// CancelBond defines a method for cancelling a bond.
CancelBond(context.Context, *MsgCancelBond) (*MsgCancelBondResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error)
mustEmbedUnimplementedMsgServer()
}
@ -114,6 +130,9 @@ func (UnimplementedMsgServer) WithdrawBond(context.Context, *MsgWithdrawBond) (*
func (UnimplementedMsgServer) CancelBond(context.Context, *MsgCancelBond) (*MsgCancelBondResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method CancelBond not implemented")
}
func (UnimplementedMsgServer) UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateParams not implemented")
}
func (UnimplementedMsgServer) mustEmbedUnimplementedMsgServer() {}
// UnsafeMsgServer may be embedded to opt out of forward compatibility for this service.
@ -199,6 +218,24 @@ func _Msg_CancelBond_Handler(srv interface{}, ctx context.Context, dec func(inte
return interceptor(ctx, in, info, handler)
}
func _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(MsgUpdateParams)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MsgServer).UpdateParams(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: Msg_UpdateParams_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MsgServer).UpdateParams(ctx, req.(*MsgUpdateParams))
}
return interceptor(ctx, in, info, handler)
}
// Msg_ServiceDesc is the grpc.ServiceDesc for Msg service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@ -222,6 +259,10 @@ var Msg_ServiceDesc = grpc.ServiceDesc{
MethodName: "CancelBond",
Handler: _Msg_CancelBond_Handler,
},
{
MethodName: "UpdateParams",
Handler: _Msg_UpdateParams_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "cerc/bond/v1/tx.proto",

View File

@ -14,12 +14,14 @@ import (
)
var (
md_Module protoreflect.MessageDescriptor
md_Module protoreflect.MessageDescriptor
fd_Module_authority protoreflect.FieldDescriptor
)
func init() {
file_cerc_registry_module_v1_module_proto_init()
md_Module = File_cerc_registry_module_v1_module_proto.Messages().ByName("Module")
fd_Module_authority = md_Module.Fields().ByName("authority")
}
var _ protoreflect.Message = (*fastReflection_Module)(nil)
@ -87,6 +89,12 @@ func (x *fastReflection_Module) Interface() protoreflect.ProtoMessage {
// While iterating, mutating operations may only be performed
// on the current field descriptor.
func (x *fastReflection_Module) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
if x.Authority != "" {
value := protoreflect.ValueOfString(x.Authority)
if !f(fd_Module_authority, value) {
return
}
}
}
// Has reports whether a field is populated.
@ -102,6 +110,8 @@ func (x *fastReflection_Module) Range(f func(protoreflect.FieldDescriptor, proto
// a repeated field is populated if it is non-empty.
func (x *fastReflection_Module) Has(fd protoreflect.FieldDescriptor) bool {
switch fd.FullName() {
case "cerc.registry.module.v1.Module.authority":
return x.Authority != ""
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.registry.module.v1.Module"))
@ -118,6 +128,8 @@ func (x *fastReflection_Module) Has(fd protoreflect.FieldDescriptor) bool {
// Clear is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Module) Clear(fd protoreflect.FieldDescriptor) {
switch fd.FullName() {
case "cerc.registry.module.v1.Module.authority":
x.Authority = ""
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.registry.module.v1.Module"))
@ -134,6 +146,9 @@ func (x *fastReflection_Module) Clear(fd protoreflect.FieldDescriptor) {
// of the value; to obtain a mutable reference, use Mutable.
func (x *fastReflection_Module) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
switch descriptor.FullName() {
case "cerc.registry.module.v1.Module.authority":
value := x.Authority
return protoreflect.ValueOfString(value)
default:
if descriptor.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.registry.module.v1.Module"))
@ -154,6 +169,8 @@ func (x *fastReflection_Module) Get(descriptor protoreflect.FieldDescriptor) pro
// Set is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Module) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
switch fd.FullName() {
case "cerc.registry.module.v1.Module.authority":
x.Authority = value.Interface().(string)
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.registry.module.v1.Module"))
@ -174,6 +191,8 @@ func (x *fastReflection_Module) Set(fd protoreflect.FieldDescriptor, value proto
// Mutable is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Module) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "cerc.registry.module.v1.Module.authority":
panic(fmt.Errorf("field authority of message cerc.registry.module.v1.Module is not mutable"))
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.registry.module.v1.Module"))
@ -187,6 +206,8 @@ func (x *fastReflection_Module) Mutable(fd protoreflect.FieldDescriptor) protore
// For lists, maps, and messages, this returns a new, empty, mutable value.
func (x *fastReflection_Module) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "cerc.registry.module.v1.Module.authority":
return protoreflect.ValueOfString("")
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: cerc.registry.module.v1.Module"))
@ -256,6 +277,10 @@ func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
var n int
var l int
_ = l
l = len(x.Authority)
if l > 0 {
n += 1 + l + runtime.Sov(uint64(l))
}
if x.unknownFields != nil {
n += len(x.unknownFields)
}
@ -285,6 +310,13 @@ func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
i -= len(x.unknownFields)
copy(dAtA[i:], x.unknownFields)
}
if len(x.Authority) > 0 {
i -= len(x.Authority)
copy(dAtA[i:], x.Authority)
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Authority)))
i--
dAtA[i] = 0x12
}
if input.Buf != nil {
input.Buf = append(input.Buf, dAtA...)
} else {
@ -334,6 +366,38 @@ func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Module: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 2:
if wireType != 2 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
}
if iNdEx >= l {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
}
if postIndex > l {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
}
x.Authority = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := runtime.Skip(dAtA[iNdEx:])
@ -388,6 +452,10 @@ type Module struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// authority defines the custom module authority. If not set, defaults to the
// governance module.
Authority string `protobuf:"bytes,2,opt,name=authority,proto3" json:"authority,omitempty"`
}
func (x *Module) Reset() {
@ -410,6 +478,13 @@ func (*Module) Descriptor() ([]byte, []int) {
return file_cerc_registry_module_v1_module_proto_rawDescGZIP(), []int{0}
}
func (x *Module) GetAuthority() string {
if x != nil {
return x.Authority
}
return ""
}
var File_cerc_registry_module_v1_module_proto protoreflect.FileDescriptor
var file_cerc_registry_module_v1_module_proto_rawDesc = []byte{
@ -419,26 +494,27 @@ var file_cerc_registry_module_v1_module_proto_rawDesc = []byte{
0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x1a,
0x20, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x61, 0x70, 0x70, 0x2f, 0x76, 0x31, 0x61, 0x6c,
0x70, 0x68, 0x61, 0x31, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x22, 0x38, 0x0a, 0x06, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x2e, 0xba, 0xc0, 0x96,
0xda, 0x01, 0x28, 0x0a, 0x26, 0x67, 0x69, 0x74, 0x2e, 0x76, 0x64, 0x62, 0x2e, 0x74, 0x6f, 0x2f,
0x63, 0x65, 0x72, 0x63, 0x2d, 0x69, 0x6f, 0x2f, 0x6c, 0x61, 0x63, 0x6f, 0x6e, 0x69, 0x63, 0x64,
0x2f, 0x78, 0x2f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x42, 0xeb, 0x01, 0x0a, 0x1b,
0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x65, 0x72, 0x63, 0x2e, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x4d, 0x6f, 0x64,
0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x40, 0x67, 0x69, 0x74, 0x2e,
0x76, 0x64, 0x62, 0x2e, 0x74, 0x6f, 0x2f, 0x63, 0x65, 0x72, 0x63, 0x2d, 0x69, 0x6f, 0x2f, 0x6c,
0x61, 0x63, 0x6f, 0x6e, 0x69, 0x63, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x65, 0x72, 0x63,
0x2f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65,
0x2f, 0x76, 0x31, 0x3b, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43,
0x52, 0x4d, 0xaa, 0x02, 0x17, 0x43, 0x65, 0x72, 0x63, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74,
0x72, 0x79, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x17, 0x43,
0x65, 0x72, 0x63, 0x5c, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x5c, 0x4d, 0x6f, 0x64,
0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x23, 0x43, 0x65, 0x72, 0x63, 0x5c, 0x52, 0x65,
0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31,
0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1a, 0x43,
0x65, 0x72, 0x63, 0x3a, 0x3a, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x3a, 0x3a, 0x4d,
0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
0x6f, 0x22, 0x56, 0x0a, 0x06, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61,
0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x3a, 0x2e, 0xba, 0xc0, 0x96, 0xda, 0x01,
0x28, 0x0a, 0x26, 0x67, 0x69, 0x74, 0x2e, 0x76, 0x64, 0x62, 0x2e, 0x74, 0x6f, 0x2f, 0x63, 0x65,
0x72, 0x63, 0x2d, 0x69, 0x6f, 0x2f, 0x6c, 0x61, 0x63, 0x6f, 0x6e, 0x69, 0x63, 0x64, 0x2f, 0x78,
0x2f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x42, 0xeb, 0x01, 0x0a, 0x1b, 0x63, 0x6f,
0x6d, 0x2e, 0x63, 0x65, 0x72, 0x63, 0x2e, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x4d, 0x6f, 0x64, 0x75, 0x6c,
0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x40, 0x67, 0x69, 0x74, 0x2e, 0x76, 0x64,
0x62, 0x2e, 0x74, 0x6f, 0x2f, 0x63, 0x65, 0x72, 0x63, 0x2d, 0x69, 0x6f, 0x2f, 0x6c, 0x61, 0x63,
0x6f, 0x6e, 0x69, 0x63, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x65, 0x72, 0x63, 0x2f, 0x72,
0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2f, 0x76,
0x31, 0x3b, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x52, 0x4d,
0xaa, 0x02, 0x17, 0x43, 0x65, 0x72, 0x63, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x17, 0x43, 0x65, 0x72,
0x63, 0x5c, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c,
0x65, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x23, 0x43, 0x65, 0x72, 0x63, 0x5c, 0x52, 0x65, 0x67, 0x69,
0x73, 0x74, 0x72, 0x79, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47,
0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1a, 0x43, 0x65, 0x72,
0x63, 0x3a, 0x3a, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x3a, 0x3a, 0x4d, 0x6f, 0x64,
0x75, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (

File diff suppressed because it is too large Load Diff

View File

@ -29,6 +29,7 @@ const (
Msg_DeleteName_FullMethodName = "/cerc.registry.v1.Msg/DeleteName"
Msg_ReserveAuthority_FullMethodName = "/cerc.registry.v1.Msg/ReserveAuthority"
Msg_SetAuthorityBond_FullMethodName = "/cerc.registry.v1.Msg/SetAuthorityBond"
Msg_UpdateParams_FullMethodName = "/cerc.registry.v1.Msg/UpdateParams"
)
// MsgClient is the client API for Msg service.
@ -55,6 +56,9 @@ type MsgClient interface {
ReserveAuthority(ctx context.Context, in *MsgReserveAuthority, opts ...grpc.CallOption) (*MsgReserveAuthorityResponse, error)
// SetAuthorityBond
SetAuthorityBond(ctx context.Context, in *MsgSetAuthorityBond, opts ...grpc.CallOption) (*MsgSetAuthorityBondResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error)
}
type msgClient struct {
@ -155,6 +159,15 @@ func (c *msgClient) SetAuthorityBond(ctx context.Context, in *MsgSetAuthorityBon
return out, nil
}
func (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) {
out := new(MsgUpdateParamsResponse)
err := c.cc.Invoke(ctx, Msg_UpdateParams_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// MsgServer is the server API for Msg service.
// All implementations must embed UnimplementedMsgServer
// for forward compatibility
@ -179,6 +192,9 @@ type MsgServer interface {
ReserveAuthority(context.Context, *MsgReserveAuthority) (*MsgReserveAuthorityResponse, error)
// SetAuthorityBond
SetAuthorityBond(context.Context, *MsgSetAuthorityBond) (*MsgSetAuthorityBondResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error)
mustEmbedUnimplementedMsgServer()
}
@ -216,6 +232,9 @@ func (UnimplementedMsgServer) ReserveAuthority(context.Context, *MsgReserveAutho
func (UnimplementedMsgServer) SetAuthorityBond(context.Context, *MsgSetAuthorityBond) (*MsgSetAuthorityBondResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method SetAuthorityBond not implemented")
}
func (UnimplementedMsgServer) UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateParams not implemented")
}
func (UnimplementedMsgServer) mustEmbedUnimplementedMsgServer() {}
// UnsafeMsgServer may be embedded to opt out of forward compatibility for this service.
@ -409,6 +428,24 @@ func _Msg_SetAuthorityBond_Handler(srv interface{}, ctx context.Context, dec fun
return interceptor(ctx, in, info, handler)
}
func _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(MsgUpdateParams)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MsgServer).UpdateParams(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: Msg_UpdateParams_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MsgServer).UpdateParams(ctx, req.(*MsgUpdateParams))
}
return interceptor(ctx, in, info, handler)
}
// Msg_ServiceDesc is the grpc.ServiceDesc for Msg service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@ -456,6 +493,10 @@ var Msg_ServiceDesc = grpc.ServiceDesc{
MethodName: "SetAuthorityBond",
Handler: _Msg_SetAuthorityBond_Handler,
},
{
MethodName: "UpdateParams",
Handler: _Msg_UpdateParams_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "cerc/registry/v1/tx.proto",

View File

@ -226,12 +226,18 @@ func (app *LaconicApp) prepForZeroHeightGenesis(ctx sdk.Context, jailAllowedAddr
/* Handle slashing state. */
// reset start height on signing infos
app.SlashingKeeper.IterateValidatorSigningInfos(
err = app.SlashingKeeper.IterateValidatorSigningInfos(
ctx,
func(addr sdk.ConsAddress, info slashingtypes.ValidatorSigningInfo) (stop bool) {
info.StartHeight = 0
app.SlashingKeeper.SetValidatorSigningInfo(ctx, addr, info)
err = app.SlashingKeeper.SetValidatorSigningInfo(ctx, addr, info)
if err != nil {
log.Fatal(err)
}
return false
},
)
if err != nil {
log.Fatal(err)
}
}

View File

@ -413,7 +413,12 @@ func (q queryResolver) GetParticipantByAddress(ctx context.Context, address stri
func (q queryResolver) GetParticipantByNitroAddress(ctx context.Context, nitroAddress string) (*Participant, error) {
onboardingQueryClient := onboardingTypes.NewQueryClient(q.ctx)
participantResp, err := onboardingQueryClient.GetParticipantByNitroAddress(ctx, &onboardingTypes.QueryGetParticipantByNitroAddressRequest{NitroAddress: nitroAddress})
participantResp, err := onboardingQueryClient.GetParticipantByNitroAddress(
ctx,
&onboardingTypes.QueryGetParticipantByNitroAddressRequest{
NitroAddress: nitroAddress,
},
)
if err != nil {
return nil, err
}

View File

@ -10,4 +10,8 @@ message Module {
option (cosmos.app.v1alpha1.module) = {
go_import : "git.vdb.to/cerc-io/laconicd/x/auction"
};
// authority defines the custom module authority. If not set, defaults to the
// governance module.
string authority = 2;
}

View File

@ -7,6 +7,7 @@ import "gogoproto/gogo.proto";
import "google/api/annotations.proto";
import "google/protobuf/duration.proto";
import "cosmos/base/v1beta1/coin.proto";
import "cosmos_proto/cosmos.proto";
import "cerc/auction/v1/auction.proto";
option go_package = "git.vdb.to/cerc-io/laconicd/x/auction";
@ -29,6 +30,10 @@ service Msg {
rpc RevealBid(MsgRevealBid) returns (MsgRevealBidResponse) {
option (google.api.http).post = "/cerc/auction/v1/reveal_bid";
};
// UpdateParams defines an operation for updating the x/staking module
// parameters.
rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse);
}
// MsgCreateAuction defines a create auction message
@ -134,3 +139,21 @@ message MsgRevealBidResponse {
Auction auction = 1
[ (gogoproto.moretags) = "json:\"auction\" yaml:\"auction\"" ];
}
// MsgUpdateParams is the Msg/UpdateParams request type.
message MsgUpdateParams {
option (cosmos.msg.v1.signer) = "authority";
// authority is the address that controls the module (defaults to x/gov unless
// overwritten).
string authority = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ];
// params defines the x/auction parameters to update.
//
// NOTE: All parameters must be supplied.
Params params = 2 [ (gogoproto.nullable) = false ];
}
// MsgUpdateParamsResponse defines the response structure for executing a
// MsgUpdateParams message.
message MsgUpdateParamsResponse {};

View File

@ -10,4 +10,8 @@ message Module {
option (cosmos.app.v1alpha1.module) = {
go_import : "git.vdb.to/cerc-io/laconicd/x/bond"
};
// authority defines the custom module authority. If not set, defaults to the
// governance module.
string authority = 2;
}

View File

@ -6,6 +6,8 @@ import "cosmos/msg/v1/msg.proto";
import "gogoproto/gogo.proto";
import "google/api/annotations.proto";
import "cosmos/base/v1beta1/coin.proto";
import "cosmos_proto/cosmos.proto";
import "cerc/bond/v1/bond.proto";
option go_package = "git.vdb.to/cerc-io/laconicd/x/bond";
@ -32,6 +34,10 @@ service Msg {
rpc CancelBond(MsgCancelBond) returns (MsgCancelBondResponse) {
option (google.api.http).post = "/cerc/bond/v1/cancel_bond";
};
// UpdateParams defines an operation for updating the x/staking module
// parameters.
rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse);
}
// MsgCreateBond defines a SDK message for creating a new bond.
@ -91,3 +97,21 @@ message MsgCancelBond {
// MsgCancelBondResponse defines the Msg/CancelBond response type.
message MsgCancelBondResponse {}
// MsgUpdateParams is the Msg/UpdateParams request type.
message MsgUpdateParams {
option (cosmos.msg.v1.signer) = "authority";
// authority is the address that controls the module (defaults to x/gov unless
// overwritten).
string authority = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ];
// params defines the x/bond parameters to update.
//
// NOTE: All parameters must be supplied.
Params params = 2 [ (gogoproto.nullable) = false ];
}
// MsgUpdateParamsResponse defines the response structure for executing a
// MsgUpdateParams message.
message MsgUpdateParamsResponse {};

View File

@ -10,4 +10,8 @@ message Module {
option (cosmos.app.v1alpha1.module) = {
go_import : "git.vdb.to/cerc-io/laconicd/x/registry"
};
// authority defines the custom module authority. If not set, defaults to the
// governance module.
string authority = 2;
}

View File

@ -6,6 +6,7 @@ import "google/api/annotations.proto";
import "gogoproto/gogo.proto";
import "cosmos/msg/v1/msg.proto";
import "cerc/registry/v1/registry.proto";
import "cosmos_proto/cosmos.proto";
option go_package = "git.vdb.to/cerc-io/laconicd/x/registry";
@ -66,6 +67,10 @@ service Msg {
returns (MsgSetAuthorityBondResponse) {
option (google.api.http).post = "/cerc/registry/v1/set_authority_bond";
}
// UpdateParams defines an operation for updating the x/staking module
// parameters.
rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse);
}
// MsgSetRecord
@ -203,3 +208,21 @@ message MsgReassociateRecords {
// MsgReassociateRecordsResponse
message MsgReassociateRecordsResponse {}
// MsgUpdateParams is the Msg/UpdateParams request type.
message MsgUpdateParams {
option (cosmos.msg.v1.signer) = "authority";
// authority is the address that controls the module (defaults to x/gov unless
// overwritten).
string authority = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ];
// params defines the x/registry parameters to update.
//
// NOTE: All parameters must be supplied.
Params params = 2 [ (gogoproto.nullable) = false ];
}
// MsgUpdateParamsResponse defines the response structure for executing a
// MsgUpdateParams message.
message MsgUpdateParamsResponse {}

View File

@ -99,9 +99,9 @@ func (tf *TestFixture) Setup() error {
log.NewNopLogger(),
)
auctionKeeper := auctionkeeper.NewKeeper(cdc, runtime.NewKVStoreService(keys[auctionTypes.StoreKey]), accountKeeper, bankKeeper)
auctionKeeper := auctionkeeper.NewKeeper(cdc, runtime.NewKVStoreService(keys[auctionTypes.StoreKey]), accountKeeper, bankKeeper, authority.String())
bondKeeper := bondkeeper.NewKeeper(cdc, runtime.NewKVStoreService(keys[bondTypes.StoreKey]), accountKeeper, bankKeeper)
bondKeeper := bondkeeper.NewKeeper(cdc, runtime.NewKVStoreService(keys[bondTypes.StoreKey]), accountKeeper, bankKeeper, authority.String())
registryKeeper := registrykeeper.NewKeeper(
cdc,
@ -110,6 +110,7 @@ func (tf *TestFixture) Setup() error {
bankKeeper,
bondKeeper,
auctionKeeper,
authority.String(),
)
authModule := auth.NewAppModule(cdc, accountKeeper, authsims.RandomGenesisAccounts, nil)

View File

@ -67,6 +67,8 @@ type Keeper struct {
// Codecs
cdc codec.BinaryCodec
authority string
// External keepers
accountKeeper auth.AccountKeeper
bankKeeper bank.Keeper
@ -91,10 +93,17 @@ func NewKeeper(
storeService storetypes.KVStoreService,
accountKeeper auth.AccountKeeper,
bankKeeper bank.Keeper,
authority string,
) *Keeper {
// ensure that authority is a valid AccAddress
if _, err := accountKeeper.AddressCodec().StringToBytes(authority); err != nil {
panic("authority is not a valid acc address")
}
sb := collections.NewSchemaBuilder(storeService)
k := Keeper{
cdc: cdc,
authority: authority,
accountKeeper: accountKeeper,
bankKeeper: bankKeeper,
Params: collections.NewItem(sb, auctiontypes.ParamsPrefix, "params", codec.CollValue[auctiontypes.Params](cdc)),
@ -528,6 +537,11 @@ func (k Keeper) RevealBid(ctx sdk.Context, msg auctiontypes.MsgRevealBid) (*auct
return &auction, nil
}
// GetAuthority returns the x/auction module's authority.
func (k Keeper) GetAuthority() string {
return k.authority
}
// GetParams gets the auction module's parameters.
func (k Keeper) GetParams(ctx sdk.Context) (*auctiontypes.Params, error) {
params, err := k.Params.Get(ctx)
@ -538,6 +552,11 @@ func (k Keeper) GetParams(ctx sdk.Context) (*auctiontypes.Params, error) {
return &params, nil
}
// SetParams sets the x/auction module parameters.
func (k Keeper) SetParams(ctx sdk.Context, params auctiontypes.Params) error {
return k.Params.Set(ctx, params)
}
// GetAuctionModuleBalances gets the auction module account(s) balances.
func (k Keeper) GetAuctionModuleBalances(ctx sdk.Context) sdk.Coins {
moduleAddress := k.accountKeeper.GetModuleAddress(auctiontypes.ModuleName)

View File

@ -3,9 +3,11 @@ package keeper
import (
"context"
errorsmod "cosmossdk.io/errors"
"git.vdb.to/cerc-io/laconicd/utils"
auctiontypes "git.vdb.to/cerc-io/laconicd/x/auction"
sdk "github.com/cosmos/cosmos-sdk/types"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
)
var _ auctiontypes.MsgServer = msgServer{}
@ -128,3 +130,22 @@ func (ms msgServer) RevealBid(c context.Context, msg *auctiontypes.MsgRevealBid)
return &auctiontypes.MsgRevealBidResponse{Auction: resp}, nil
}
// UpdateParams defines a method to perform updation of module params.
func (ms msgServer) UpdateParams(c context.Context, msg *auctiontypes.MsgUpdateParams) (*auctiontypes.MsgUpdateParamsResponse, error) {
if ms.k.authority != msg.Authority {
return nil, errorsmod.Wrapf(govtypes.ErrInvalidSigner, "invalid authority; expected %s, got %s", ms.k.authority, msg.Authority)
}
if err := msg.Params.Validate(); err != nil {
return nil, err
}
ctx := sdk.UnwrapSDKContext(c)
if err := ms.k.SetParams(ctx, msg.Params); err != nil {
return nil, err
}
return &auctiontypes.MsgUpdateParamsResponse{}, nil
}

View File

@ -91,7 +91,12 @@ func (am AppModule) AutoCLIOptions() *autocliv1.ModuleOptions {
{ProtoField: "minimum_bid"},
},
},
{
RpcMethod: "UpdateParams",
Skip: true, // skipped because authority gated
},
},
EnhanceCustomCommand: true, // Allow additional manual commands
},
}

View File

@ -7,7 +7,9 @@ import (
"github.com/cosmos/cosmos-sdk/codec"
auth "github.com/cosmos/cosmos-sdk/x/auth/keeper"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
bank "github.com/cosmos/cosmos-sdk/x/bank/keeper"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
modulev1 "git.vdb.to/cerc-io/laconicd/api/cerc/auction/module/v1"
"git.vdb.to/cerc-io/laconicd/x/auction"
@ -33,6 +35,7 @@ func init() {
type ModuleInputs struct {
depinject.In
Config *modulev1.Module
Cdc codec.Codec
StoreService store.KVStoreService
@ -52,7 +55,13 @@ type ModuleOutputs struct {
}
func ProvideModule(in ModuleInputs) ModuleOutputs {
k := keeper.NewKeeper(in.Cdc, in.StoreService, in.AccountKeeper, in.BankKeeper)
// default to governance authority if not provided
authority := authtypes.NewModuleAddress(govtypes.ModuleName)
if in.Config.Authority != "" {
authority = authtypes.NewModuleAddressOrBech32Address(in.Config.Authority)
}
k := keeper.NewKeeper(in.Cdc, in.StoreService, in.AccountKeeper, in.BankKeeper, authority.String())
m := NewAppModule(in.Cdc, k)
return ModuleOutputs{Module: m, Keeper: k}

View File

@ -6,6 +6,7 @@ package auction
import (
context "context"
fmt "fmt"
_ "github.com/cosmos/cosmos-proto"
types "github.com/cosmos/cosmos-sdk/types"
_ "github.com/cosmos/cosmos-sdk/types/msgservice"
_ "github.com/cosmos/gogoproto/gogoproto"
@ -287,6 +288,102 @@ func (m *MsgRevealBidResponse) XXX_DiscardUnknown() {
var xxx_messageInfo_MsgRevealBidResponse proto.InternalMessageInfo
// MsgUpdateParams is the Msg/UpdateParams request type.
type MsgUpdateParams struct {
// authority is the address that controls the module (defaults to x/gov unless
// overwritten).
Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"`
// params defines the x/auction parameters to update.
//
// NOTE: All parameters must be supplied.
Params Params `protobuf:"bytes,2,opt,name=params,proto3" json:"params"`
}
func (m *MsgUpdateParams) Reset() { *m = MsgUpdateParams{} }
func (m *MsgUpdateParams) String() string { return proto.CompactTextString(m) }
func (*MsgUpdateParams) ProtoMessage() {}
func (*MsgUpdateParams) Descriptor() ([]byte, []int) {
return fileDescriptor_70947cda59e835fd, []int{6}
}
func (m *MsgUpdateParams) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
}
func (m *MsgUpdateParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
if deterministic {
return xxx_messageInfo_MsgUpdateParams.Marshal(b, m, deterministic)
} else {
b = b[:cap(b)]
n, err := m.MarshalToSizedBuffer(b)
if err != nil {
return nil, err
}
return b[:n], nil
}
}
func (m *MsgUpdateParams) XXX_Merge(src proto.Message) {
xxx_messageInfo_MsgUpdateParams.Merge(m, src)
}
func (m *MsgUpdateParams) XXX_Size() int {
return m.Size()
}
func (m *MsgUpdateParams) XXX_DiscardUnknown() {
xxx_messageInfo_MsgUpdateParams.DiscardUnknown(m)
}
var xxx_messageInfo_MsgUpdateParams proto.InternalMessageInfo
func (m *MsgUpdateParams) GetAuthority() string {
if m != nil {
return m.Authority
}
return ""
}
func (m *MsgUpdateParams) GetParams() Params {
if m != nil {
return m.Params
}
return Params{}
}
// MsgUpdateParamsResponse defines the response structure for executing a
// MsgUpdateParams message.
type MsgUpdateParamsResponse struct {
}
func (m *MsgUpdateParamsResponse) Reset() { *m = MsgUpdateParamsResponse{} }
func (m *MsgUpdateParamsResponse) String() string { return proto.CompactTextString(m) }
func (*MsgUpdateParamsResponse) ProtoMessage() {}
func (*MsgUpdateParamsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_70947cda59e835fd, []int{7}
}
func (m *MsgUpdateParamsResponse) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
}
func (m *MsgUpdateParamsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
if deterministic {
return xxx_messageInfo_MsgUpdateParamsResponse.Marshal(b, m, deterministic)
} else {
b = b[:cap(b)]
n, err := m.MarshalToSizedBuffer(b)
if err != nil {
return nil, err
}
return b[:n], nil
}
}
func (m *MsgUpdateParamsResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_MsgUpdateParamsResponse.Merge(m, src)
}
func (m *MsgUpdateParamsResponse) XXX_Size() int {
return m.Size()
}
func (m *MsgUpdateParamsResponse) XXX_DiscardUnknown() {
xxx_messageInfo_MsgUpdateParamsResponse.DiscardUnknown(m)
}
var xxx_messageInfo_MsgUpdateParamsResponse proto.InternalMessageInfo
func init() {
proto.RegisterType((*MsgCreateAuction)(nil), "cerc.auction.v1.MsgCreateAuction")
proto.RegisterType((*MsgCreateAuctionResponse)(nil), "cerc.auction.v1.MsgCreateAuctionResponse")
@ -294,60 +391,70 @@ func init() {
proto.RegisterType((*MsgCommitBidResponse)(nil), "cerc.auction.v1.MsgCommitBidResponse")
proto.RegisterType((*MsgRevealBid)(nil), "cerc.auction.v1.MsgRevealBid")
proto.RegisterType((*MsgRevealBidResponse)(nil), "cerc.auction.v1.MsgRevealBidResponse")
proto.RegisterType((*MsgUpdateParams)(nil), "cerc.auction.v1.MsgUpdateParams")
proto.RegisterType((*MsgUpdateParamsResponse)(nil), "cerc.auction.v1.MsgUpdateParamsResponse")
}
func init() { proto.RegisterFile("cerc/auction/v1/tx.proto", fileDescriptor_70947cda59e835fd) }
var fileDescriptor_70947cda59e835fd = []byte{
// 767 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x55, 0x4f, 0x6b, 0x13, 0x5f,
0x14, 0xcd, 0x34, 0x6d, 0x7e, 0xe4, 0xe5, 0x27, 0x2d, 0xa1, 0x62, 0x9a, 0x9a, 0x4c, 0x3b, 0xa5,
0xf4, 0x8f, 0x74, 0x86, 0xd4, 0x45, 0xa1, 0x2e, 0xa4, 0x53, 0x29, 0x2a, 0x74, 0x33, 0xe0, 0xc6,
0x4d, 0x98, 0x3f, 0xaf, 0xd3, 0x27, 0x99, 0x79, 0x25, 0x6f, 0x12, 0xeb, 0x4e, 0x0b, 0x8a, 0x4b,
0xc1, 0x8d, 0x1b, 0xc1, 0x8f, 0xd0, 0x8f, 0xd1, 0x65, 0xc1, 0x8d, 0x6e, 0xa2, 0xb4, 0x42, 0x37,
0xae, 0xf2, 0x09, 0x64, 0xde, 0xbb, 0x2f, 0x99, 0x4c, 0x42, 0x4b, 0xb1, 0xb8, 0x9b, 0x7b, 0xcf,
0x7d, 0xf7, 0x9c, 0x7b, 0xe6, 0xbe, 0x19, 0x54, 0x72, 0x71, 0xd3, 0x35, 0xec, 0x96, 0x1b, 0x11,
0x1a, 0x1a, 0xed, 0x9a, 0x11, 0x1d, 0xea, 0x07, 0x4d, 0x1a, 0xd1, 0xe2, 0x64, 0x8c, 0xe8, 0x80,
0xe8, 0xed, 0x5a, 0xf9, 0x8e, 0x4b, 0x59, 0x40, 0x99, 0x11, 0x30, 0x3f, 0x2e, 0x0c, 0x98, 0x2f,
0x2a, 0xcb, 0xd3, 0x3e, 0xf5, 0x29, 0x7f, 0x34, 0xe2, 0x27, 0xc8, 0xde, 0xf5, 0x29, 0xf5, 0x1b,
0xd8, 0xb0, 0x0f, 0x88, 0x61, 0x87, 0x21, 0x8d, 0xec, 0xb8, 0x11, 0x03, 0xb4, 0x0a, 0x28, 0x8f,
0x9c, 0xd6, 0x9e, 0xe1, 0xb5, 0x9a, 0xbc, 0x40, 0xe2, 0x40, 0xe6, 0xd8, 0x0c, 0x1b, 0xed, 0x9a,
0x83, 0x23, 0xbb, 0x66, 0xb8, 0x94, 0x48, 0xbc, 0x92, 0xd6, 0x2d, 0x85, 0x72, 0x58, 0xfb, 0x3c,
0x81, 0xa6, 0x76, 0x99, 0xbf, 0xdd, 0xc4, 0x76, 0x84, 0xb7, 0x04, 0x54, 0x7c, 0xa3, 0xa0, 0x29,
0x97, 0x06, 0x01, 0x89, 0x58, 0x5d, 0xd2, 0x95, 0x94, 0x39, 0x65, 0xb9, 0xb0, 0x3e, 0xa3, 0x0b,
0x3d, 0xba, 0xd4, 0xa3, 0x3f, 0x82, 0x02, 0xf3, 0xc1, 0x49, 0x47, 0xcd, 0x74, 0x3b, 0xaa, 0xf1,
0x82, 0xd1, 0x70, 0x53, 0x4b, 0x37, 0xd0, 0xe6, 0x5e, 0xd9, 0x41, 0x63, 0x44, 0xfe, 0xd3, 0x0f,
0x55, 0xb1, 0x26, 0x21, 0x2d, 0xbb, 0x71, 0x0d, 0x4d, 0xdc, 0xc6, 0x76, 0x23, 0xa1, 0x61, 0xec,
0x9a, 0x1a, 0xd2, 0x0d, 0xa4, 0x86, 0xa1, 0xbc, 0xd0, 0x00, 0xe9, 0x9e, 0x06, 0x8c, 0x90, 0x90,
0x55, 0xdf, 0xc3, 0xb8, 0x94, 0x05, 0x72, 0x61, 0xb8, 0x1e, 0x1b, 0xae, 0x83, 0xe1, 0xfa, 0x36,
0x25, 0xa1, 0x79, 0x0f, 0xc8, 0x17, 0x92, 0x06, 0xc4, 0x47, 0x07, 0x47, 0xe7, 0x19, 0x2b, 0x2f,
0x82, 0x1d, 0x8c, 0x63, 0x1a, 0xc1, 0xcc, 0x69, 0xc6, 0xaf, 0x49, 0xd3, 0x3f, 0x3a, 0x38, 0x1d,
0xd0, 0x88, 0x20, 0xa6, 0x21, 0xa8, 0x10, 0x90, 0x90, 0x04, 0xad, 0xa0, 0xee, 0x10, 0xaf, 0x34,
0x71, 0x15, 0xcf, 0x1a, 0xf0, 0x2c, 0x0a, 0x9e, 0xc4, 0x59, 0x49, 0x94, 0x4c, 0x59, 0x08, 0x22,
0x93, 0x78, 0xc5, 0x0d, 0x94, 0x63, 0xc4, 0x0f, 0x71, 0xb3, 0x94, 0x9b, 0x53, 0x96, 0xf3, 0xa6,
0xda, 0xed, 0xa8, 0xb3, 0xa2, 0x8d, 0xc8, 0xcb, 0x0e, 0x10, 0x59, 0x50, 0xbe, 0x39, 0xf9, 0xfe,
0x8b, 0x9a, 0x39, 0xba, 0x38, 0x5e, 0x85, 0x84, 0xf6, 0x12, 0x95, 0xd2, 0xeb, 0x69, 0x61, 0x76,
0x40, 0x43, 0x86, 0x8b, 0xcf, 0xd0, 0x7f, 0xb0, 0xcc, 0xb0, 0x9c, 0x25, 0x3d, 0x75, 0x15, 0x75,
0x38, 0x62, 0xce, 0x77, 0x3b, 0x6a, 0x45, 0x08, 0x00, 0x54, 0x2a, 0x90, 0xa1, 0x25, 0x7b, 0x6d,
0x8e, 0xc7, 0x1a, 0xb4, 0xdf, 0x0a, 0xfa, 0x3f, 0x66, 0xe6, 0x6f, 0x29, 0x9e, 0x69, 0x07, 0x21,
0xa8, 0xa8, 0x13, 0x8f, 0x13, 0xe6, 0xcd, 0xa5, 0xfe, 0x6b, 0xe8, 0x63, 0xa9, 0xce, 0x71, 0xc6,
0xca, 0x43, 0xf0, 0xc4, 0x2b, 0x3e, 0x45, 0x05, 0xd8, 0x83, 0x7d, 0x9b, 0xed, 0xf3, 0x95, 0xce,
0x9b, 0x2b, 0x7d, 0x9f, 0x13, 0x60, 0x6a, 0x6f, 0x78, 0xca, 0x82, 0x95, 0x7c, 0x6c, 0xb3, 0xfd,
0x84, 0xcf, 0xd9, 0xbf, 0xf4, 0xb9, 0x8e, 0xa6, 0x93, 0xd3, 0xf6, 0x3c, 0xde, 0x42, 0x59, 0x07,
0xc6, 0x2d, 0xac, 0x4f, 0x0f, 0xf9, 0x6b, 0x12, 0xcf, 0x9c, 0xe9, 0x76, 0xd4, 0xdb, 0x82, 0x34,
0xb1, 0x1b, 0x7c, 0x27, 0xe2, 0xb3, 0xe0, 0xe7, 0x77, 0xe1, 0xa7, 0xc5, 0xd7, 0xf1, 0x26, 0xfd,
0xdc, 0x40, 0x39, 0xb1, 0xe3, 0x60, 0x65, 0xc2, 0x03, 0x91, 0x1f, 0xbc, 0x16, 0x9a, 0x05, 0xe5,
0x37, 0x68, 0x1e, 0xe3, 0xe6, 0xf5, 0x46, 0xfb, 0x27, 0x0b, 0xba, 0xfe, 0x36, 0x8b, 0xb2, 0xbb,
0xcc, 0x2f, 0xbe, 0x53, 0xd0, 0xad, 0xc1, 0xcf, 0xf7, 0xfc, 0x10, 0x4b, 0xfa, 0x0a, 0x95, 0x57,
0xae, 0x2c, 0x91, 0x43, 0x68, 0x4b, 0x47, 0x5f, 0x7f, 0x7d, 0x1c, 0x9b, 0xd7, 0x54, 0x23, 0xfd,
0x27, 0x71, 0x79, 0x7d, 0x1d, 0x32, 0xc5, 0x36, 0xca, 0xf7, 0x6f, 0x4b, 0x65, 0x24, 0x81, 0x84,
0xcb, 0x8b, 0x97, 0xc2, 0x3d, 0xee, 0x05, 0xce, 0x5d, 0xd1, 0x66, 0x87, 0xb9, 0xc5, 0x95, 0x70,
0x88, 0x17, 0xf3, 0xf6, 0xb7, 0x6a, 0x24, 0x6f, 0x0f, 0x1e, 0xcd, 0x3b, 0xf4, 0xe2, 0x2e, 0xe1,
0x85, 0x6f, 0xab, 0x43, 0xbc, 0xf2, 0xc4, 0xeb, 0x8b, 0xe3, 0x55, 0xc5, 0x7c, 0x78, 0x72, 0x56,
0x55, 0x4e, 0xcf, 0xaa, 0xca, 0xcf, 0xb3, 0xaa, 0xf2, 0xe1, 0xbc, 0x9a, 0x39, 0x3d, 0xaf, 0x66,
0xbe, 0x9d, 0x57, 0x33, 0xcf, 0x17, 0x7d, 0x12, 0xe9, 0x6d, 0xcf, 0xd1, 0x23, 0xca, 0xfb, 0xac,
0x11, 0x6a, 0x34, 0x6c, 0x97, 0x86, 0xc4, 0xf5, 0x8c, 0x43, 0xd9, 0xd5, 0xc9, 0xf1, 0xdf, 0xd8,
0xfd, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x78, 0xd3, 0xb3, 0x8a, 0x62, 0x08, 0x00, 0x00,
// 881 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0x41, 0x6f, 0xdc, 0x44,
0x14, 0x5e, 0x77, 0x93, 0x45, 0x3b, 0x29, 0xa4, 0xb2, 0x82, 0xe2, 0x6c, 0xc9, 0x3a, 0x71, 0x15,
0x35, 0x2d, 0x8a, 0xad, 0x04, 0x41, 0xa5, 0x70, 0x40, 0x71, 0x51, 0x05, 0x48, 0x91, 0x90, 0x51,
0x2f, 0xbd, 0xac, 0xc6, 0xf6, 0xd4, 0x3b, 0x68, 0xed, 0x59, 0x79, 0xbc, 0x4b, 0x7b, 0x83, 0x1e,
0x10, 0xc7, 0x4a, 0x5c, 0xb8, 0x20, 0xf1, 0x13, 0x7a, 0xe0, 0x47, 0xf4, 0x58, 0xc1, 0x05, 0x2e,
0x0b, 0x24, 0x48, 0xbd, 0x70, 0xda, 0x5f, 0x80, 0x66, 0xe6, 0xcd, 0xda, 0xeb, 0x5d, 0x35, 0xaa,
0x88, 0xb8, 0xed, 0x7b, 0xdf, 0x9b, 0xf7, 0x7d, 0xef, 0xf3, 0x1b, 0x7b, 0x91, 0x15, 0x91, 0x3c,
0xf2, 0xf0, 0x28, 0x2a, 0x28, 0xcb, 0xbc, 0xf1, 0xa1, 0x57, 0x3c, 0x72, 0x87, 0x39, 0x2b, 0x98,
0xb9, 0x2e, 0x10, 0x17, 0x10, 0x77, 0x7c, 0xd8, 0xd9, 0x8c, 0x18, 0x4f, 0x19, 0xf7, 0x52, 0x9e,
0x88, 0xc2, 0x94, 0x27, 0xaa, 0xb2, 0xb3, 0x91, 0xb0, 0x84, 0xc9, 0x9f, 0x9e, 0xf8, 0x05, 0xd9,
0x77, 0x12, 0xc6, 0x92, 0x01, 0xf1, 0xf0, 0x90, 0x7a, 0x38, 0xcb, 0x58, 0x81, 0x45, 0x23, 0x0e,
0x68, 0x17, 0x50, 0x19, 0x85, 0xa3, 0x87, 0x5e, 0x3c, 0xca, 0x65, 0x81, 0xc6, 0x81, 0x2c, 0xc4,
0x9c, 0x78, 0xe3, 0xc3, 0x90, 0x14, 0xf8, 0xd0, 0x8b, 0x18, 0xd5, 0xf8, 0x96, 0xc2, 0x7b, 0x8a,
0x56, 0x05, 0x00, 0x6d, 0xd7, 0x47, 0xd2, 0x33, 0x48, 0xd8, 0xf9, 0x71, 0x15, 0x5d, 0x3b, 0xe5,
0xc9, 0xdd, 0x9c, 0xe0, 0x82, 0x9c, 0x28, 0xc8, 0xfc, 0xc6, 0x40, 0xd7, 0x22, 0x96, 0xa6, 0xb4,
0xe0, 0x3d, 0xad, 0xc4, 0x32, 0x76, 0x8c, 0xfd, 0xb5, 0xa3, 0x2d, 0x57, 0x49, 0x75, 0xb5, 0x54,
0xf7, 0x63, 0x28, 0xf0, 0x3f, 0x7c, 0x3e, 0xb1, 0x1b, 0xd3, 0x89, 0xed, 0x7d, 0xc9, 0x59, 0x76,
0xec, 0xd4, 0x1b, 0x38, 0x3b, 0x8f, 0x71, 0x3a, 0x58, 0x92, 0xff, 0xe1, 0x0f, 0xdb, 0x08, 0xd6,
0x21, 0xad, 0xbb, 0x49, 0x0d, 0x39, 0x19, 0x13, 0x3c, 0xa8, 0x68, 0xb8, 0xf2, 0x9a, 0x1a, 0xea,
0x0d, 0xb4, 0x86, 0x85, 0xbc, 0xd2, 0x00, 0xe9, 0x99, 0x06, 0x82, 0x90, 0x92, 0xd5, 0x7b, 0x48,
0x88, 0xd5, 0x04, 0x72, 0xb0, 0x57, 0x3c, 0x0b, 0x17, 0x9e, 0x85, 0x7b, 0x97, 0xd1, 0xcc, 0x7f,
0x17, 0xc8, 0x6f, 0x54, 0x0d, 0x10, 0x47, 0xe7, 0x47, 0x97, 0x99, 0xa0, 0xad, 0x82, 0x7b, 0x84,
0x08, 0x1a, 0xc5, 0x2c, 0x69, 0x56, 0x5e, 0x93, 0xa6, 0x3c, 0x3a, 0x3f, 0x1d, 0xd0, 0xa8, 0x40,
0xd0, 0x50, 0xb4, 0x96, 0xd2, 0x8c, 0xa6, 0xa3, 0xb4, 0x17, 0xd2, 0xd8, 0x5a, 0xbd, 0x88, 0xe7,
0x00, 0x78, 0xf6, 0x14, 0x4f, 0xe5, 0xac, 0x26, 0xaa, 0xa6, 0x02, 0x04, 0x91, 0x4f, 0x63, 0xf3,
0x0e, 0x6a, 0x71, 0x9a, 0x64, 0x24, 0xb7, 0x5a, 0x3b, 0xc6, 0x7e, 0xdb, 0xb7, 0xa7, 0x13, 0xfb,
0xba, 0x6a, 0xa3, 0xf2, 0xba, 0x03, 0x44, 0x01, 0x94, 0x1f, 0xaf, 0x7f, 0xf7, 0x93, 0xdd, 0x78,
0xf2, 0xf2, 0xd9, 0x6d, 0x48, 0x38, 0x5f, 0x21, 0xab, 0xbe, 0x9e, 0x01, 0xe1, 0x43, 0x96, 0x71,
0x62, 0xde, 0x47, 0x6f, 0xc0, 0x32, 0xc3, 0x72, 0x5a, 0x6e, 0xed, 0x96, 0xba, 0x70, 0xc4, 0xdf,
0x9d, 0x4e, 0xec, 0x6d, 0x25, 0x00, 0x50, 0xad, 0x40, 0x87, 0x81, 0xee, 0x75, 0xbc, 0x22, 0x34,
0x38, 0xff, 0x18, 0xe8, 0xaa, 0x60, 0x96, 0x4f, 0x49, 0xcc, 0x74, 0x0f, 0x21, 0xa8, 0xe8, 0xd1,
0x58, 0x12, 0xb6, 0xfd, 0x9b, 0xe5, 0x63, 0x28, 0xb1, 0x5a, 0x67, 0x91, 0x09, 0xda, 0x10, 0x7c,
0x1a, 0x9b, 0x9f, 0xa1, 0x35, 0xd8, 0x83, 0x3e, 0xe6, 0x7d, 0xb9, 0xd2, 0x6d, 0xff, 0x56, 0xe9,
0x73, 0x05, 0xac, 0xed, 0x8d, 0x4c, 0x05, 0xb0, 0x92, 0x9f, 0x60, 0xde, 0xaf, 0xf8, 0xdc, 0xfc,
0x8f, 0x3e, 0xf7, 0xd0, 0x46, 0x75, 0xda, 0x99, 0xc7, 0x27, 0xa8, 0x19, 0xc2, 0xb8, 0x6b, 0x47,
0x1b, 0x0b, 0xfe, 0xfa, 0x34, 0xf6, 0xb7, 0xa6, 0x13, 0xfb, 0x6d, 0x45, 0x5a, 0xd9, 0x0d, 0xb9,
0x13, 0xe2, 0x2c, 0xf8, 0xf9, 0xbb, 0xf2, 0x33, 0x90, 0xeb, 0x78, 0x99, 0x7e, 0xde, 0x41, 0x2d,
0xb5, 0xe3, 0x60, 0x65, 0xc5, 0x03, 0x95, 0x9f, 0xbf, 0x16, 0x4e, 0x00, 0xe5, 0x97, 0x68, 0x1e,
0x97, 0xe6, 0xcd, 0x46, 0xfb, 0x7f, 0x16, 0xf4, 0xa9, 0x81, 0xd6, 0x4f, 0x79, 0x72, 0x7f, 0x18,
0xe3, 0x82, 0x7c, 0x8e, 0x73, 0x9c, 0x72, 0xf3, 0x03, 0xd4, 0xc6, 0xa3, 0xa2, 0xcf, 0x72, 0x5a,
0x3c, 0x06, 0x4b, 0xad, 0x5f, 0x7e, 0x3e, 0xd8, 0x80, 0x3b, 0x7e, 0x12, 0xc7, 0x39, 0xe1, 0xfc,
0x8b, 0x22, 0xa7, 0x59, 0x12, 0x94, 0xa5, 0xe6, 0xfb, 0xa8, 0x35, 0x94, 0x1d, 0xe0, 0x0d, 0xbb,
0xb9, 0xa0, 0x53, 0x11, 0xf8, 0x2b, 0xe2, 0x9d, 0x10, 0x40, 0xf1, 0xf1, 0x5b, 0xc2, 0x84, 0xb2,
0x8d, 0xb3, 0x85, 0x36, 0x6b, 0x8a, 0xb4, 0x15, 0x47, 0x7f, 0x35, 0x51, 0xf3, 0x94, 0x27, 0xe6,
0xb7, 0x06, 0x7a, 0x73, 0xfe, 0x63, 0xb3, 0xbb, 0xc0, 0x55, 0xbf, 0xf0, 0x9d, 0x5b, 0x17, 0x96,
0x68, 0x1e, 0xe7, 0xe6, 0x93, 0x5f, 0xff, 0xfe, 0xfe, 0xca, 0xae, 0x63, 0x7b, 0xf5, 0xef, 0x5e,
0x24, 0xeb, 0x7b, 0x90, 0x31, 0xc7, 0xa8, 0x5d, 0xde, 0xed, 0xed, 0xa5, 0x04, 0x1a, 0xee, 0xec,
0xbd, 0x12, 0x9e, 0x71, 0xdf, 0x90, 0xdc, 0xdb, 0xce, 0xf5, 0x45, 0x6e, 0x75, 0x81, 0x43, 0x1a,
0x0b, 0xde, 0xf2, 0x0e, 0x2c, 0xe5, 0x9d, 0xc1, 0xcb, 0x79, 0x17, 0xd6, 0xec, 0x15, 0xbc, 0xf0,
0x25, 0x10, 0xbc, 0x0f, 0xd0, 0xd5, 0xb9, 0x55, 0xd9, 0x59, 0xd6, 0xbb, 0x5a, 0xd1, 0xd9, 0xbf,
0xa8, 0x42, 0x0b, 0xe8, 0xac, 0x7e, 0xfd, 0xf2, 0xd9, 0x6d, 0xc3, 0xff, 0xe8, 0xf9, 0x59, 0xd7,
0x78, 0x71, 0xd6, 0x35, 0xfe, 0x3c, 0xeb, 0x1a, 0x4f, 0xcf, 0xbb, 0x8d, 0x17, 0xe7, 0xdd, 0xc6,
0x6f, 0xe7, 0xdd, 0xc6, 0x83, 0xbd, 0x84, 0x16, 0xee, 0x38, 0x0e, 0x5d, 0xf1, 0xef, 0x84, 0xe4,
0xd1, 0x01, 0x65, 0xde, 0x00, 0x47, 0x2c, 0xa3, 0x51, 0xec, 0x3d, 0xd2, 0x8a, 0xc3, 0x96, 0xfc,
0xa0, 0xbf, 0xf7, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xca, 0x2e, 0x75, 0x29, 0x87, 0x09, 0x00,
0x00,
}
// Reference imports to suppress errors if they are not otherwise used.
@ -368,6 +475,9 @@ type MsgClient interface {
CommitBid(ctx context.Context, in *MsgCommitBid, opts ...grpc.CallOption) (*MsgCommitBidResponse, error)
// RevealBid is the command for revealing a bid
RevealBid(ctx context.Context, in *MsgRevealBid, opts ...grpc.CallOption) (*MsgRevealBidResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error)
}
type msgClient struct {
@ -405,6 +515,15 @@ func (c *msgClient) RevealBid(ctx context.Context, in *MsgRevealBid, opts ...grp
return out, nil
}
func (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) {
out := new(MsgUpdateParamsResponse)
err := c.cc.Invoke(ctx, "/cerc.auction.v1.Msg/UpdateParams", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// MsgServer is the server API for Msg service.
type MsgServer interface {
// CreateAuction is the command for creating an auction
@ -413,6 +532,9 @@ type MsgServer interface {
CommitBid(context.Context, *MsgCommitBid) (*MsgCommitBidResponse, error)
// RevealBid is the command for revealing a bid
RevealBid(context.Context, *MsgRevealBid) (*MsgRevealBidResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error)
}
// UnimplementedMsgServer can be embedded to have forward compatible implementations.
@ -428,6 +550,9 @@ func (*UnimplementedMsgServer) CommitBid(ctx context.Context, req *MsgCommitBid)
func (*UnimplementedMsgServer) RevealBid(ctx context.Context, req *MsgRevealBid) (*MsgRevealBidResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method RevealBid not implemented")
}
func (*UnimplementedMsgServer) UpdateParams(ctx context.Context, req *MsgUpdateParams) (*MsgUpdateParamsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateParams not implemented")
}
func RegisterMsgServer(s grpc1.Server, srv MsgServer) {
s.RegisterService(&_Msg_serviceDesc, srv)
@ -487,6 +612,24 @@ func _Msg_RevealBid_Handler(srv interface{}, ctx context.Context, dec func(inter
return interceptor(ctx, in, info, handler)
}
func _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(MsgUpdateParams)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MsgServer).UpdateParams(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/cerc.auction.v1.Msg/UpdateParams",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MsgServer).UpdateParams(ctx, req.(*MsgUpdateParams))
}
return interceptor(ctx, in, info, handler)
}
var _Msg_serviceDesc = grpc.ServiceDesc{
ServiceName: "cerc.auction.v1.Msg",
HandlerType: (*MsgServer)(nil),
@ -503,6 +646,10 @@ var _Msg_serviceDesc = grpc.ServiceDesc{
MethodName: "RevealBid",
Handler: _Msg_RevealBid_Handler,
},
{
MethodName: "UpdateParams",
Handler: _Msg_UpdateParams_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "cerc/auction/v1/tx.proto",
@ -777,6 +924,69 @@ func (m *MsgRevealBidResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
return len(dAtA) - i, nil
}
func (m *MsgUpdateParams) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalToSizedBuffer(dAtA[:size])
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *MsgUpdateParams) MarshalTo(dAtA []byte) (int, error) {
size := m.Size()
return m.MarshalToSizedBuffer(dAtA[:size])
}
func (m *MsgUpdateParams) MarshalToSizedBuffer(dAtA []byte) (int, error) {
i := len(dAtA)
_ = i
var l int
_ = l
{
size, err := m.Params.MarshalToSizedBuffer(dAtA[:i])
if err != nil {
return 0, err
}
i -= size
i = encodeVarintTx(dAtA, i, uint64(size))
}
i--
dAtA[i] = 0x12
if len(m.Authority) > 0 {
i -= len(m.Authority)
copy(dAtA[i:], m.Authority)
i = encodeVarintTx(dAtA, i, uint64(len(m.Authority)))
i--
dAtA[i] = 0xa
}
return len(dAtA) - i, nil
}
func (m *MsgUpdateParamsResponse) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalToSizedBuffer(dAtA[:size])
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *MsgUpdateParamsResponse) MarshalTo(dAtA []byte) (int, error) {
size := m.Size()
return m.MarshalToSizedBuffer(dAtA[:size])
}
func (m *MsgUpdateParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
i := len(dAtA)
_ = i
var l int
_ = l
return len(dAtA) - i, nil
}
func encodeVarintTx(dAtA []byte, offset int, v uint64) int {
offset -= sovTx(v)
base := offset
@ -892,6 +1102,30 @@ func (m *MsgRevealBidResponse) Size() (n int) {
return n
}
func (m *MsgUpdateParams) Size() (n int) {
if m == nil {
return 0
}
var l int
_ = l
l = len(m.Authority)
if l > 0 {
n += 1 + l + sovTx(uint64(l))
}
l = m.Params.Size()
n += 1 + l + sovTx(uint64(l))
return n
}
func (m *MsgUpdateParamsResponse) Size() (n int) {
if m == nil {
return 0
}
var l int
_ = l
return n
}
func sovTx(x uint64) (n int) {
return (math_bits.Len64(x|1) + 6) / 7
}
@ -1695,6 +1929,171 @@ func (m *MsgRevealBidResponse) Unmarshal(dAtA []byte) error {
}
return nil
}
func (m *MsgUpdateParams) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: MsgUpdateParams: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: MsgUpdateParams: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthTx
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return ErrInvalidLengthTx
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Authority = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
msglen |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthTx
}
postIndex := iNdEx + msglen
if postIndex < 0 {
return ErrInvalidLengthTx
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipTx(dAtA[iNdEx:])
if err != nil {
return err
}
if (skippy < 0) || (iNdEx+skippy) < 0 {
return ErrInvalidLengthTx
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *MsgUpdateParamsResponse) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: MsgUpdateParamsResponse: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: MsgUpdateParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
default:
iNdEx = preIndex
skippy, err := skipTx(dAtA[iNdEx:])
if err != nil {
return err
}
if (skippy < 0) || (iNdEx+skippy) < 0 {
return ErrInvalidLengthTx
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipTx(dAtA []byte) (n int, err error) {
l := len(dAtA)
iNdEx := 0

View File

@ -45,6 +45,8 @@ type Keeper struct {
// Codecs
cdc codec.BinaryCodec
authority string
// External keepers
accountKeeper auth.AccountKeeper
bankKeeper bank.Keeper
@ -64,10 +66,17 @@ func NewKeeper(
storeService store.KVStoreService,
accountKeeper auth.AccountKeeper,
bankKeeper bank.Keeper,
authority string,
) *Keeper {
// ensure that authority is a valid AccAddress
if _, err := accountKeeper.AddressCodec().StringToBytes(authority); err != nil {
panic("authority is not a valid acc address")
}
sb := collections.NewSchemaBuilder(storeService)
k := Keeper{
cdc: cdc,
authority: authority,
accountKeeper: accountKeeper,
bankKeeper: bankKeeper,
Params: collections.NewItem(sb, bondtypes.ParamsPrefix, "params", codec.CollValue[bondtypes.Params](cdc)),
@ -355,6 +364,11 @@ func (k Keeper) CancelBond(ctx sdk.Context, id string, ownerAddress sdk.AccAddre
return &bond, nil
}
// GetAuthority returns the x/bond module's authority.
func (k Keeper) GetAuthority() string {
return k.authority
}
// GetParams gets the bond module's parameters.
func (k Keeper) GetParams(ctx sdk.Context) (*bondtypes.Params, error) {
params, err := k.Params.Get(ctx)
@ -365,6 +379,11 @@ func (k Keeper) GetParams(ctx sdk.Context) (*bondtypes.Params, error) {
return &params, nil
}
// SetParams sets the x/bond module parameters.
func (k Keeper) SetParams(ctx sdk.Context, params bondtypes.Params) error {
return k.Params.Set(ctx, params)
}
func (k Keeper) getMaxBondAmount(ctx sdk.Context) (sdk.Coins, error) {
params, err := k.GetParams(ctx)
if err != nil {

View File

@ -3,7 +3,9 @@ package keeper
import (
"context"
errorsmod "cosmossdk.io/errors"
sdk "github.com/cosmos/cosmos-sdk/types"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
"git.vdb.to/cerc-io/laconicd/utils"
"git.vdb.to/cerc-io/laconicd/x/bond"
@ -168,3 +170,22 @@ func (ms msgServer) CancelBond(c context.Context, msg *bond.MsgCancelBond) (*bon
return &bond.MsgCancelBondResponse{}, nil
}
// UpdateParams defines a method to perform updation of module params.
func (ms msgServer) UpdateParams(c context.Context, msg *bond.MsgUpdateParams) (*bond.MsgUpdateParamsResponse, error) {
if ms.k.authority != msg.Authority {
return nil, errorsmod.Wrapf(govtypes.ErrInvalidSigner, "invalid authority; expected %s, got %s", ms.k.authority, msg.Authority)
}
if err := msg.Params.Validate(); err != nil {
return nil, err
}
ctx := sdk.UnwrapSDKContext(c)
if err := ms.k.SetParams(ctx, msg.Params); err != nil {
return nil, err
}
return &bond.MsgUpdateParamsResponse{}, nil
}

View File

@ -88,6 +88,10 @@ func (am AppModule) AutoCLIOptions() *autocliv1.ModuleOptions {
{ProtoField: "id"},
},
},
{
RpcMethod: "UpdateParams",
Skip: true, // skipped because authority gated
},
},
},
}

View File

@ -7,7 +7,9 @@ import (
"github.com/cosmos/cosmos-sdk/codec"
auth "github.com/cosmos/cosmos-sdk/x/auth/keeper"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
bank "github.com/cosmos/cosmos-sdk/x/bank/keeper"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
modulev1 "git.vdb.to/cerc-io/laconicd/api/cerc/bond/module/v1"
"git.vdb.to/cerc-io/laconicd/x/bond"
@ -33,6 +35,7 @@ func init() {
type ModuleInputs struct {
depinject.In
Config *modulev1.Module
Cdc codec.Codec
StoreService store.KVStoreService
@ -48,7 +51,13 @@ type ModuleOutputs struct {
}
func ProvideModule(in ModuleInputs) ModuleOutputs {
k := keeper.NewKeeper(in.Cdc, in.StoreService, in.AccountKeeper, in.BankKeeper)
// default to governance authority if not provided
authority := authtypes.NewModuleAddress(govtypes.ModuleName)
if in.Config.Authority != "" {
authority = authtypes.NewModuleAddressOrBech32Address(in.Config.Authority)
}
k := keeper.NewKeeper(in.Cdc, in.StoreService, in.AccountKeeper, in.BankKeeper, authority.String())
m := NewAppModule(in.Cdc, k)
return ModuleOutputs{Module: m, Keeper: k}

View File

@ -6,6 +6,7 @@ package bond
import (
context "context"
fmt "fmt"
_ "github.com/cosmos/cosmos-proto"
github_com_cosmos_cosmos_sdk_types "github.com/cosmos/cosmos-sdk/types"
types "github.com/cosmos/cosmos-sdk/types"
_ "github.com/cosmos/cosmos-sdk/types/msgservice"
@ -416,6 +417,102 @@ func (m *MsgCancelBondResponse) XXX_DiscardUnknown() {
var xxx_messageInfo_MsgCancelBondResponse proto.InternalMessageInfo
// MsgUpdateParams is the Msg/UpdateParams request type.
type MsgUpdateParams struct {
// authority is the address that controls the module (defaults to x/gov unless
// overwritten).
Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"`
// params defines the x/bond parameters to update.
//
// NOTE: All parameters must be supplied.
Params Params `protobuf:"bytes,2,opt,name=params,proto3" json:"params"`
}
func (m *MsgUpdateParams) Reset() { *m = MsgUpdateParams{} }
func (m *MsgUpdateParams) String() string { return proto.CompactTextString(m) }
func (*MsgUpdateParams) ProtoMessage() {}
func (*MsgUpdateParams) Descriptor() ([]byte, []int) {
return fileDescriptor_efb1a132c2c5bd62, []int{8}
}
func (m *MsgUpdateParams) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
}
func (m *MsgUpdateParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
if deterministic {
return xxx_messageInfo_MsgUpdateParams.Marshal(b, m, deterministic)
} else {
b = b[:cap(b)]
n, err := m.MarshalToSizedBuffer(b)
if err != nil {
return nil, err
}
return b[:n], nil
}
}
func (m *MsgUpdateParams) XXX_Merge(src proto.Message) {
xxx_messageInfo_MsgUpdateParams.Merge(m, src)
}
func (m *MsgUpdateParams) XXX_Size() int {
return m.Size()
}
func (m *MsgUpdateParams) XXX_DiscardUnknown() {
xxx_messageInfo_MsgUpdateParams.DiscardUnknown(m)
}
var xxx_messageInfo_MsgUpdateParams proto.InternalMessageInfo
func (m *MsgUpdateParams) GetAuthority() string {
if m != nil {
return m.Authority
}
return ""
}
func (m *MsgUpdateParams) GetParams() Params {
if m != nil {
return m.Params
}
return Params{}
}
// MsgUpdateParamsResponse defines the response structure for executing a
// MsgUpdateParams message.
type MsgUpdateParamsResponse struct {
}
func (m *MsgUpdateParamsResponse) Reset() { *m = MsgUpdateParamsResponse{} }
func (m *MsgUpdateParamsResponse) String() string { return proto.CompactTextString(m) }
func (*MsgUpdateParamsResponse) ProtoMessage() {}
func (*MsgUpdateParamsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_efb1a132c2c5bd62, []int{9}
}
func (m *MsgUpdateParamsResponse) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
}
func (m *MsgUpdateParamsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
if deterministic {
return xxx_messageInfo_MsgUpdateParamsResponse.Marshal(b, m, deterministic)
} else {
b = b[:cap(b)]
n, err := m.MarshalToSizedBuffer(b)
if err != nil {
return nil, err
}
return b[:n], nil
}
}
func (m *MsgUpdateParamsResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_MsgUpdateParamsResponse.Merge(m, src)
}
func (m *MsgUpdateParamsResponse) XXX_Size() int {
return m.Size()
}
func (m *MsgUpdateParamsResponse) XXX_DiscardUnknown() {
xxx_messageInfo_MsgUpdateParamsResponse.DiscardUnknown(m)
}
var xxx_messageInfo_MsgUpdateParamsResponse proto.InternalMessageInfo
func init() {
proto.RegisterType((*MsgCreateBond)(nil), "cerc.bond.v1.MsgCreateBond")
proto.RegisterType((*MsgCreateBondResponse)(nil), "cerc.bond.v1.MsgCreateBondResponse")
@ -425,47 +522,56 @@ func init() {
proto.RegisterType((*MsgWithdrawBondResponse)(nil), "cerc.bond.v1.MsgWithdrawBondResponse")
proto.RegisterType((*MsgCancelBond)(nil), "cerc.bond.v1.MsgCancelBond")
proto.RegisterType((*MsgCancelBondResponse)(nil), "cerc.bond.v1.MsgCancelBondResponse")
proto.RegisterType((*MsgUpdateParams)(nil), "cerc.bond.v1.MsgUpdateParams")
proto.RegisterType((*MsgUpdateParamsResponse)(nil), "cerc.bond.v1.MsgUpdateParamsResponse")
}
func init() { proto.RegisterFile("cerc/bond/v1/tx.proto", fileDescriptor_efb1a132c2c5bd62) }
var fileDescriptor_efb1a132c2c5bd62 = []byte{
// 548 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x54, 0x41, 0x6f, 0xd3, 0x30,
0x18, 0x6d, 0x5a, 0x6d, 0x12, 0xde, 0x00, 0xa9, 0x62, 0x6c, 0x6d, 0x59, 0x5a, 0x32, 0x21, 0xaa,
0x49, 0xb3, 0xd5, 0x71, 0x9b, 0x38, 0x75, 0x5c, 0x7b, 0xe9, 0x05, 0x89, 0x0b, 0x72, 0x12, 0xe3,
0x19, 0x1a, 0x7f, 0x25, 0x36, 0xdd, 0x7a, 0x41, 0x68, 0xbf, 0x00, 0x89, 0x7f, 0xc1, 0x69, 0x07,
0x7e, 0x02, 0x42, 0x3b, 0x4e, 0xe2, 0xc2, 0x69, 0x4c, 0x2d, 0xd2, 0xee, 0xfc, 0x02, 0x14, 0x27,
0x4d, 0x93, 0x35, 0x9b, 0xc4, 0x0d, 0x4e, 0x8d, 0xfd, 0x9e, 0xdf, 0xfb, 0xde, 0xe7, 0xcf, 0x45,
0x6b, 0x1e, 0x0b, 0x3d, 0xe2, 0x82, 0xf4, 0xc9, 0xa8, 0x43, 0xf4, 0x11, 0x1e, 0x86, 0xa0, 0xa1,
0xba, 0x1a, 0x6d, 0xe3, 0x68, 0x1b, 0x8f, 0x3a, 0xf5, 0x75, 0x0f, 0x54, 0x00, 0x8a, 0x04, 0x8a,
0x47, 0xac, 0x40, 0xf1, 0x98, 0x56, 0xbf, 0xc7, 0x81, 0x83, 0xf9, 0x24, 0xd1, 0x57, 0xb2, 0xfb,
0x80, 0x03, 0xf0, 0x01, 0x23, 0x74, 0x28, 0x08, 0x95, 0x12, 0x34, 0xd5, 0x02, 0xa4, 0x4a, 0x50,
0x3b, 0x11, 0x73, 0xa9, 0x62, 0x64, 0xd4, 0x71, 0x99, 0xa6, 0x1d, 0xe2, 0x81, 0x90, 0x31, 0xee,
0x7c, 0xb1, 0xd0, 0xed, 0x9e, 0xe2, 0xfb, 0x21, 0xa3, 0x9a, 0x75, 0x41, 0xfa, 0xd5, 0xfb, 0x68,
0x59, 0x09, 0x2e, 0x59, 0xb8, 0x61, 0xb5, 0xac, 0xf6, 0xad, 0x7e, 0xb2, 0xaa, 0xbe, 0x47, 0x4b,
0xd1, 0x39, 0xb5, 0x51, 0x6e, 0x55, 0xda, 0x2b, 0xbb, 0x35, 0x1c, 0x2b, 0xe3, 0x48, 0x19, 0x27,
0xca, 0x78, 0x1f, 0x84, 0xec, 0xf6, 0x4e, 0xcf, 0x9b, 0xa5, 0xdf, 0xe7, 0xcd, 0xda, 0x6b, 0x05,
0x72, 0xcf, 0x31, 0xa7, 0x9c, 0xd6, 0x98, 0x06, 0x83, 0xd9, 0xe2, 0xf3, 0xcf, 0x66, 0x9b, 0x0b,
0x7d, 0xf0, 0xce, 0xc5, 0x1e, 0x04, 0x24, 0xa9, 0x31, 0xfe, 0xd9, 0x51, 0xfe, 0x1b, 0xa2, 0xc7,
0x43, 0xa6, 0x8c, 0x9a, 0xea, 0xc7, 0xb6, 0x7b, 0x2b, 0xc7, 0x97, 0x27, 0xdb, 0x49, 0x31, 0xce,
0x63, 0xb4, 0x96, 0xab, 0xba, 0xcf, 0xd4, 0x10, 0xa4, 0x62, 0xd5, 0x3b, 0xa8, 0x2c, 0xfc, 0xa4,
0xf2, 0xb2, 0xf0, 0x9d, 0xaf, 0x71, 0xbe, 0x3e, 0x7b, 0x25, 0x06, 0x03, 0x93, 0xef, 0x0a, 0x23,
0x93, 0xb7, 0x5c, 0x9c, 0xb7, 0xf2, 0x0f, 0xe4, 0x5d, 0x37, 0x79, 0xe7, 0x29, 0x66, 0x79, 0x9d,
0x6f, 0x16, 0xba, 0xdb, 0x53, 0xfc, 0xb9, 0xd0, 0x07, 0x7e, 0x48, 0x0f, 0xff, 0xdf, 0x84, 0x35,
0xb4, 0x7e, 0x25, 0x47, 0x9a, 0xf1, 0x59, 0x3c, 0xa2, 0x54, 0x7a, 0xec, 0xaf, 0xae, 0xb0, 0xa8,
0x85, 0x73, 0x95, 0x99, 0xfc, 0xee, 0x45, 0x05, 0x55, 0x7a, 0x8a, 0x57, 0xdf, 0x22, 0x94, 0x79,
0x06, 0x0d, 0x9c, 0x7d, 0x94, 0x38, 0x37, 0x6d, 0xf5, 0xad, 0x1b, 0xc0, 0xb4, 0xec, 0x87, 0xc7,
0xdf, 0x7f, 0x7d, 0x2a, 0x37, 0x9c, 0x1a, 0xc9, 0xbd, 0x7a, 0xcf, 0x30, 0x5f, 0x46, 0xcb, 0xc8,
0x32, 0x33, 0x99, 0x8b, 0x96, 0x73, 0xb0, 0xc0, 0xb2, 0x60, 0x1a, 0xae, 0xb1, 0x0c, 0x0d, 0x33,
0xb6, 0x1c, 0xa3, 0xd5, 0xdc, 0xb0, 0x6c, 0x2e, 0xe8, 0x66, 0xe1, 0xfa, 0xa3, 0x1b, 0xe1, 0xd4,
0x78, 0xcb, 0x18, 0x6f, 0x3a, 0x8d, 0xbc, 0xf1, 0x61, 0xc2, 0x4d, 0xd3, 0x66, 0x2e, 0xb1, 0xa0,
0xc1, 0x29, 0x58, 0xd4, 0xe0, 0x85, 0x8b, 0xbb, 0xb6, 0xc1, 0x86, 0x69, 0x2c, 0xeb, 0x4b, 0x1f,
0x2e, 0x4f, 0xb6, 0xad, 0xee, 0xd3, 0xd3, 0x89, 0x6d, 0x9d, 0x4d, 0x6c, 0xeb, 0x62, 0x62, 0x5b,
0x1f, 0xa7, 0x76, 0xe9, 0x6c, 0x6a, 0x97, 0x7e, 0x4c, 0xed, 0xd2, 0x0b, 0x87, 0x0b, 0x8d, 0x47,
0xbe, 0x8b, 0x35, 0x18, 0x95, 0x1d, 0x01, 0x64, 0x40, 0x3d, 0x90, 0xc2, 0xf3, 0xc9, 0x91, 0xd1,
0x74, 0x97, 0xcd, 0x5f, 0xe5, 0x93, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x64, 0x49, 0xe0, 0xe1,
0xbe, 0x05, 0x00, 0x00,
// 659 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x55, 0x4d, 0x6b, 0x13, 0x41,
0x18, 0xce, 0xa6, 0x1f, 0xd0, 0x69, 0xad, 0xb0, 0xb4, 0xa6, 0x49, 0xed, 0xb6, 0x6e, 0x11, 0x4b,
0xa1, 0x3b, 0x24, 0x82, 0x87, 0xe2, 0xc5, 0xd4, 0x6b, 0x40, 0xa2, 0x22, 0x78, 0x29, 0x93, 0xdd,
0x71, 0x3a, 0x9a, 0x9d, 0x59, 0x77, 0xa6, 0x69, 0x73, 0x11, 0xe9, 0x5d, 0x10, 0xfc, 0x17, 0x9e,
0x7a, 0x28, 0xfe, 0x02, 0x91, 0x1e, 0x8b, 0x5e, 0x3c, 0x55, 0x69, 0x85, 0xde, 0xfd, 0x05, 0xb2,
0x33, 0xd3, 0xcd, 0x6e, 0xb3, 0x2d, 0x78, 0xd3, 0x53, 0x76, 0xe6, 0x79, 0xf3, 0x3e, 0x1f, 0xfb,
0xce, 0x0e, 0x98, 0xf5, 0x71, 0xec, 0xc3, 0x0e, 0x67, 0x01, 0xec, 0xd5, 0xa1, 0xdc, 0xf5, 0xa2,
0x98, 0x4b, 0x6e, 0x4f, 0x25, 0xdb, 0x5e, 0xb2, 0xed, 0xf5, 0xea, 0xb5, 0x8a, 0xcf, 0x45, 0xc8,
0x05, 0x0c, 0x05, 0x49, 0xaa, 0x42, 0x41, 0x74, 0x59, 0x6d, 0x86, 0x70, 0xc2, 0xd5, 0x23, 0x4c,
0x9e, 0xcc, 0xee, 0x4d, 0xc2, 0x39, 0xe9, 0x62, 0x88, 0x22, 0x0a, 0x11, 0x63, 0x5c, 0x22, 0x49,
0x39, 0x13, 0x06, 0x75, 0x4c, 0xb3, 0x0e, 0x12, 0x18, 0xf6, 0xea, 0x1d, 0x2c, 0x51, 0x1d, 0xfa,
0x9c, 0x32, 0x83, 0x57, 0x35, 0xbe, 0xa9, 0xdb, 0xea, 0x85, 0x81, 0x2a, 0x39, 0xb1, 0x4a, 0x9d,
0x02, 0xdc, 0x03, 0x0b, 0x5c, 0x6b, 0x09, 0xb2, 0x11, 0x63, 0x24, 0x71, 0x93, 0xb3, 0xc0, 0xbe,
0x01, 0xc6, 0x05, 0x25, 0x0c, 0xc7, 0x73, 0xd6, 0x92, 0xb5, 0x32, 0xd1, 0x36, 0x2b, 0xfb, 0x0d,
0x18, 0x4b, 0xb8, 0xc4, 0x5c, 0x79, 0x69, 0x64, 0x65, 0xb2, 0x51, 0xf5, 0x0c, 0x41, 0xa2, 0xc6,
0x33, 0x6a, 0xbc, 0x0d, 0x4e, 0x59, 0xb3, 0x75, 0x78, 0xbc, 0x58, 0xfa, 0x7d, 0xbc, 0x58, 0x7d,
0x29, 0x38, 0x5b, 0x77, 0xd5, 0xbf, 0xdc, 0xa5, 0x3e, 0x0a, 0xbb, 0xe7, 0x8b, 0x8f, 0x3f, 0x16,
0x57, 0x08, 0x95, 0x5b, 0xdb, 0x1d, 0xcf, 0xe7, 0xa1, 0x91, 0x6a, 0x7e, 0xd6, 0x44, 0xf0, 0x0a,
0xca, 0x7e, 0x84, 0x85, 0xea, 0x26, 0xda, 0x9a, 0x76, 0x7d, 0x72, 0xef, 0x6c, 0x7f, 0xd5, 0x88,
0x71, 0xef, 0x80, 0xd9, 0x9c, 0xea, 0x36, 0x16, 0x11, 0x67, 0x02, 0xdb, 0xd3, 0xa0, 0x4c, 0x03,
0xa3, 0xbc, 0x4c, 0x03, 0xf7, 0xb3, 0xf6, 0xd7, 0xc6, 0x2f, 0x68, 0xb7, 0xab, 0xfc, 0x5d, 0xa8,
0xc8, 0xf8, 0x2d, 0x17, 0xfb, 0x1d, 0xf9, 0x07, 0xfc, 0x56, 0x94, 0xdf, 0x81, 0x8b, 0x73, 0xbf,
0xee, 0x17, 0x0b, 0x5c, 0x6f, 0x09, 0xf2, 0x8c, 0xca, 0xad, 0x20, 0x46, 0x3b, 0xff, 0xaf, 0xc3,
0x2a, 0xa8, 0x5c, 0xf0, 0x91, 0x7a, 0x7c, 0xa8, 0x47, 0x14, 0x31, 0x1f, 0xff, 0xd5, 0x2b, 0x2c,
0x8a, 0x70, 0xd0, 0x25, 0x6d, 0xff, 0x4e, 0x47, 0xf8, 0x34, 0x0a, 0x90, 0xc4, 0x8f, 0x50, 0x8c,
0x42, 0x61, 0xdf, 0x03, 0x13, 0x68, 0x5b, 0x6e, 0xf1, 0x98, 0xca, 0xbe, 0x26, 0x6a, 0xce, 0x7d,
0x3d, 0x58, 0x9b, 0x31, 0x09, 0x3d, 0x08, 0x82, 0x18, 0x0b, 0xf1, 0x58, 0xc6, 0x94, 0x91, 0xf6,
0xa0, 0xd4, 0x6e, 0x80, 0xf1, 0x48, 0x75, 0x50, 0x4a, 0x26, 0x1b, 0x33, 0x5e, 0xf6, 0x73, 0xe0,
0xe9, 0xee, 0xcd, 0xd1, 0x24, 0xce, 0xb6, 0xa9, 0x5c, 0x9f, 0x4e, 0x54, 0x0e, 0x7a, 0x98, 0x24,
0xb2, 0x72, 0xce, 0xa5, 0x36, 0x3e, 0x8d, 0x82, 0x91, 0x96, 0x20, 0xf6, 0x6b, 0x00, 0x32, 0x27,
0x76, 0x3e, 0x4f, 0x92, 0x3b, 0x18, 0xb5, 0xe5, 0x2b, 0xc0, 0x34, 0x82, 0x5b, 0x7b, 0xdf, 0x7e,
0x7d, 0x28, 0xcf, 0xbb, 0x55, 0x98, 0xfb, 0x4e, 0xf8, 0xaa, 0x72, 0x33, 0x59, 0x26, 0x94, 0x99,
0x43, 0x34, 0x4c, 0x39, 0x00, 0x0b, 0x28, 0x0b, 0x06, 0xf7, 0x12, 0xca, 0x58, 0x55, 0x6a, 0xca,
0x3e, 0x98, 0xca, 0xcd, 0xf5, 0xc2, 0x50, 0xdf, 0x2c, 0x5c, 0xbb, 0x7d, 0x25, 0x9c, 0x12, 0x2f,
0x2b, 0xe2, 0x05, 0x77, 0x3e, 0x4f, 0xbc, 0x63, 0x6a, 0x53, 0xb7, 0x99, 0x79, 0x2b, 0x08, 0x38,
0x05, 0x8b, 0x02, 0x1e, 0x9e, 0xb1, 0xcb, 0x02, 0x56, 0x95, 0x9a, 0xf2, 0x09, 0x98, 0xca, 0x8d,
0xe0, 0xb0, 0xdb, 0x2c, 0x5c, 0xe0, 0xb6, 0x68, 0x62, 0x6a, 0x63, 0x6f, 0xcf, 0xf6, 0x57, 0xad,
0xe6, 0xfd, 0xc3, 0x13, 0xc7, 0x3a, 0x3a, 0x71, 0xac, 0x9f, 0x27, 0x8e, 0xf5, 0xfe, 0xd4, 0x29,
0x1d, 0x9d, 0x3a, 0xa5, 0xef, 0xa7, 0x4e, 0xe9, 0xb9, 0x4b, 0xa8, 0xf4, 0x7a, 0x41, 0xc7, 0x4b,
0xae, 0x0c, 0x1c, 0xfb, 0x6b, 0x94, 0xc3, 0x2e, 0xf2, 0x39, 0xa3, 0x7e, 0x00, 0x77, 0x95, 0xd2,
0xce, 0xb8, 0xba, 0x2b, 0xee, 0xfe, 0x09, 0x00, 0x00, 0xff, 0xff, 0xef, 0x34, 0xfa, 0x7f, 0xf3,
0x06, 0x00, 0x00,
}
// Reference imports to suppress errors if they are not otherwise used.
@ -488,6 +594,9 @@ type MsgClient interface {
WithdrawBond(ctx context.Context, in *MsgWithdrawBond, opts ...grpc.CallOption) (*MsgWithdrawBondResponse, error)
// CancelBond defines a method for cancelling a bond.
CancelBond(ctx context.Context, in *MsgCancelBond, opts ...grpc.CallOption) (*MsgCancelBondResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error)
}
type msgClient struct {
@ -534,6 +643,15 @@ func (c *msgClient) CancelBond(ctx context.Context, in *MsgCancelBond, opts ...g
return out, nil
}
func (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) {
out := new(MsgUpdateParamsResponse)
err := c.cc.Invoke(ctx, "/cerc.bond.v1.Msg/UpdateParams", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// MsgServer is the server API for Msg service.
type MsgServer interface {
// CreateBond defines a method for creating a new bond.
@ -544,6 +662,9 @@ type MsgServer interface {
WithdrawBond(context.Context, *MsgWithdrawBond) (*MsgWithdrawBondResponse, error)
// CancelBond defines a method for cancelling a bond.
CancelBond(context.Context, *MsgCancelBond) (*MsgCancelBondResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error)
}
// UnimplementedMsgServer can be embedded to have forward compatible implementations.
@ -562,6 +683,9 @@ func (*UnimplementedMsgServer) WithdrawBond(ctx context.Context, req *MsgWithdra
func (*UnimplementedMsgServer) CancelBond(ctx context.Context, req *MsgCancelBond) (*MsgCancelBondResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method CancelBond not implemented")
}
func (*UnimplementedMsgServer) UpdateParams(ctx context.Context, req *MsgUpdateParams) (*MsgUpdateParamsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateParams not implemented")
}
func RegisterMsgServer(s grpc1.Server, srv MsgServer) {
s.RegisterService(&_Msg_serviceDesc, srv)
@ -639,6 +763,24 @@ func _Msg_CancelBond_Handler(srv interface{}, ctx context.Context, dec func(inte
return interceptor(ctx, in, info, handler)
}
func _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(MsgUpdateParams)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MsgServer).UpdateParams(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/cerc.bond.v1.Msg/UpdateParams",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MsgServer).UpdateParams(ctx, req.(*MsgUpdateParams))
}
return interceptor(ctx, in, info, handler)
}
var _Msg_serviceDesc = grpc.ServiceDesc{
ServiceName: "cerc.bond.v1.Msg",
HandlerType: (*MsgServer)(nil),
@ -659,6 +801,10 @@ var _Msg_serviceDesc = grpc.ServiceDesc{
MethodName: "CancelBond",
Handler: _Msg_CancelBond_Handler,
},
{
MethodName: "UpdateParams",
Handler: _Msg_UpdateParams_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "cerc/bond/v1/tx.proto",
@ -946,6 +1092,69 @@ func (m *MsgCancelBondResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
return len(dAtA) - i, nil
}
func (m *MsgUpdateParams) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalToSizedBuffer(dAtA[:size])
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *MsgUpdateParams) MarshalTo(dAtA []byte) (int, error) {
size := m.Size()
return m.MarshalToSizedBuffer(dAtA[:size])
}
func (m *MsgUpdateParams) MarshalToSizedBuffer(dAtA []byte) (int, error) {
i := len(dAtA)
_ = i
var l int
_ = l
{
size, err := m.Params.MarshalToSizedBuffer(dAtA[:i])
if err != nil {
return 0, err
}
i -= size
i = encodeVarintTx(dAtA, i, uint64(size))
}
i--
dAtA[i] = 0x12
if len(m.Authority) > 0 {
i -= len(m.Authority)
copy(dAtA[i:], m.Authority)
i = encodeVarintTx(dAtA, i, uint64(len(m.Authority)))
i--
dAtA[i] = 0xa
}
return len(dAtA) - i, nil
}
func (m *MsgUpdateParamsResponse) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalToSizedBuffer(dAtA[:size])
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *MsgUpdateParamsResponse) MarshalTo(dAtA []byte) (int, error) {
size := m.Size()
return m.MarshalToSizedBuffer(dAtA[:size])
}
func (m *MsgUpdateParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
i := len(dAtA)
_ = i
var l int
_ = l
return len(dAtA) - i, nil
}
func encodeVarintTx(dAtA []byte, offset int, v uint64) int {
offset -= sovTx(v)
base := offset
@ -1079,6 +1288,30 @@ func (m *MsgCancelBondResponse) Size() (n int) {
return n
}
func (m *MsgUpdateParams) Size() (n int) {
if m == nil {
return 0
}
var l int
_ = l
l = len(m.Authority)
if l > 0 {
n += 1 + l + sovTx(uint64(l))
}
l = m.Params.Size()
n += 1 + l + sovTx(uint64(l))
return n
}
func (m *MsgUpdateParamsResponse) Size() (n int) {
if m == nil {
return 0
}
var l int
_ = l
return n
}
func sovTx(x uint64) (n int) {
return (math_bits.Len64(x|1) + 6) / 7
}
@ -1843,6 +2076,171 @@ func (m *MsgCancelBondResponse) Unmarshal(dAtA []byte) error {
}
return nil
}
func (m *MsgUpdateParams) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: MsgUpdateParams: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: MsgUpdateParams: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthTx
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return ErrInvalidLengthTx
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Authority = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
msglen |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthTx
}
postIndex := iNdEx + msglen
if postIndex < 0 {
return ErrInvalidLengthTx
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipTx(dAtA[iNdEx:])
if err != nil {
return err
}
if (skippy < 0) || (iNdEx+skippy) < 0 {
return ErrInvalidLengthTx
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *MsgUpdateParamsResponse) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: MsgUpdateParamsResponse: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: MsgUpdateParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
default:
iNdEx = preIndex
skippy, err := skipTx(dAtA[iNdEx:])
if err != nil {
return err
}
if (skippy < 0) || (iNdEx+skippy) < 0 {
return ErrInvalidLengthTx
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipTx(dAtA []byte) (n int, err error) {
l := len(dAtA)
iNdEx := 0

View File

@ -94,6 +94,8 @@ func newNameRecordIndexes(sb *collections.SchemaBuilder) NameRecordsIndexes {
type Keeper struct {
cdc codec.BinaryCodec
authority string
accountKeeper auth.AccountKeeper
bankKeeper bank.Keeper
bondKeeper *bondkeeper.Keeper
@ -118,10 +120,17 @@ func NewKeeper(
bankKeeper bank.Keeper,
bondKeeper *bondkeeper.Keeper,
auctionKeeper *auctionkeeper.Keeper,
authority string,
) Keeper {
// ensure that authority is a valid AccAddress
if _, err := accountKeeper.AddressCodec().StringToBytes(authority); err != nil {
panic("authority is not a valid acc address")
}
sb := collections.NewSchemaBuilder(storeService)
k := Keeper{
cdc: cdc,
authority: authority,
accountKeeper: accountKeeper,
bankKeeper: bankKeeper,
bondKeeper: bondKeeper,
@ -175,6 +184,16 @@ func logger(ctx sdk.Context) log.Logger {
return ctx.Logger().With("module", registrytypes.ModuleName)
}
// GetAuthority returns the x/registry module's authority.
func (k Keeper) GetAuthority() string {
return k.authority
}
// SetParams sets the x/registry module parameters.
func (k Keeper) SetParams(ctx sdk.Context, params registrytypes.Params) error {
return k.Params.Set(ctx, params)
}
// HasRecord - checks if a record by the given id exists.
func (k Keeper) HasRecord(ctx sdk.Context, id string) (bool, error) {
has, err := k.Records.Has(ctx, id)

View File

@ -3,7 +3,9 @@ package keeper
import (
"context"
errorsmod "cosmossdk.io/errors"
sdk "github.com/cosmos/cosmos-sdk/types"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
"git.vdb.to/cerc-io/laconicd/utils"
registrytypes "git.vdb.to/cerc-io/laconicd/x/registry"
@ -395,3 +397,22 @@ func (ms msgServer) ReassociateRecords(c context.Context, msg *registrytypes.Msg
return &registrytypes.MsgReassociateRecordsResponse{}, nil
}
// UpdateParams defines a method to perform updation of module params.
func (ms msgServer) UpdateParams(c context.Context, msg *registrytypes.MsgUpdateParams) (*registrytypes.MsgUpdateParamsResponse, error) {
if ms.k.authority != msg.Authority {
return nil, errorsmod.Wrapf(govtypes.ErrInvalidSigner, "invalid authority; expected %s, got %s", ms.k.authority, msg.Authority)
}
if err := msg.Params.Validate(); err != nil {
return nil, err
}
ctx := sdk.UnwrapSDKContext(c)
if err := ms.k.SetParams(ctx, msg.Params); err != nil {
return nil, err
}
return &registrytypes.MsgUpdateParamsResponse{}, nil
}

View File

@ -173,6 +173,10 @@ func (am AppModule) AutoCLIOptions() *autocliv1.ModuleOptions {
{ProtoField: "new_bond_id"},
},
},
{
RpcMethod: "UpdateParams",
Skip: true, // skipped because authority gated
},
},
EnhanceCustomCommand: true, // Allow additional manual commands
},

View File

@ -7,7 +7,9 @@ import (
"github.com/cosmos/cosmos-sdk/codec"
auth "github.com/cosmos/cosmos-sdk/x/auth/keeper"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
bank "github.com/cosmos/cosmos-sdk/x/bank/keeper"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
modulev1 "git.vdb.to/cerc-io/laconicd/api/cerc/registry/module/v1"
"git.vdb.to/cerc-io/laconicd/x/auction"
@ -35,6 +37,7 @@ func init() {
type ModuleInputs struct {
depinject.In
Config *modulev1.Module
Cdc codec.Codec
StoreService store.KVStoreService
@ -56,6 +59,11 @@ type ModuleOutputs struct {
}
func ProvideModule(in ModuleInputs) ModuleOutputs {
// default to governance authority if not provided
authority := authtypes.NewModuleAddress(govtypes.ModuleName)
if in.Config.Authority != "" {
authority = authtypes.NewModuleAddressOrBech32Address(in.Config.Authority)
}
k := keeper.NewKeeper(
in.Cdc,
in.StoreService,
@ -63,6 +71,7 @@ func ProvideModule(in ModuleInputs) ModuleOutputs {
in.BankKeeper,
in.BondKeeper,
in.AuctionKeeper,
authority.String(),
)
m := NewAppModule(in.Cdc, k)

View File

@ -6,6 +6,7 @@ package registry
import (
context "context"
fmt "fmt"
_ "github.com/cosmos/cosmos-proto"
_ "github.com/cosmos/cosmos-sdk/types/msgservice"
_ "github.com/cosmos/gogoproto/gogoproto"
grpc1 "github.com/cosmos/gogoproto/grpc"
@ -1040,6 +1041,102 @@ func (m *MsgReassociateRecordsResponse) XXX_DiscardUnknown() {
var xxx_messageInfo_MsgReassociateRecordsResponse proto.InternalMessageInfo
// MsgUpdateParams is the Msg/UpdateParams request type.
type MsgUpdateParams struct {
// authority is the address that controls the module (defaults to x/gov unless
// overwritten).
Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"`
// params defines the x/registry parameters to update.
//
// NOTE: All parameters must be supplied.
Params Params `protobuf:"bytes,2,opt,name=params,proto3" json:"params"`
}
func (m *MsgUpdateParams) Reset() { *m = MsgUpdateParams{} }
func (m *MsgUpdateParams) String() string { return proto.CompactTextString(m) }
func (*MsgUpdateParams) ProtoMessage() {}
func (*MsgUpdateParams) Descriptor() ([]byte, []int) {
return fileDescriptor_3c6eb2e5a4d8fa03, []int{21}
}
func (m *MsgUpdateParams) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
}
func (m *MsgUpdateParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
if deterministic {
return xxx_messageInfo_MsgUpdateParams.Marshal(b, m, deterministic)
} else {
b = b[:cap(b)]
n, err := m.MarshalToSizedBuffer(b)
if err != nil {
return nil, err
}
return b[:n], nil
}
}
func (m *MsgUpdateParams) XXX_Merge(src proto.Message) {
xxx_messageInfo_MsgUpdateParams.Merge(m, src)
}
func (m *MsgUpdateParams) XXX_Size() int {
return m.Size()
}
func (m *MsgUpdateParams) XXX_DiscardUnknown() {
xxx_messageInfo_MsgUpdateParams.DiscardUnknown(m)
}
var xxx_messageInfo_MsgUpdateParams proto.InternalMessageInfo
func (m *MsgUpdateParams) GetAuthority() string {
if m != nil {
return m.Authority
}
return ""
}
func (m *MsgUpdateParams) GetParams() Params {
if m != nil {
return m.Params
}
return Params{}
}
// MsgUpdateParamsResponse defines the response structure for executing a
// MsgUpdateParams message.
type MsgUpdateParamsResponse struct {
}
func (m *MsgUpdateParamsResponse) Reset() { *m = MsgUpdateParamsResponse{} }
func (m *MsgUpdateParamsResponse) String() string { return proto.CompactTextString(m) }
func (*MsgUpdateParamsResponse) ProtoMessage() {}
func (*MsgUpdateParamsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_3c6eb2e5a4d8fa03, []int{22}
}
func (m *MsgUpdateParamsResponse) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
}
func (m *MsgUpdateParamsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
if deterministic {
return xxx_messageInfo_MsgUpdateParamsResponse.Marshal(b, m, deterministic)
} else {
b = b[:cap(b)]
n, err := m.MarshalToSizedBuffer(b)
if err != nil {
return nil, err
}
return b[:n], nil
}
}
func (m *MsgUpdateParamsResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_MsgUpdateParamsResponse.Merge(m, src)
}
func (m *MsgUpdateParamsResponse) XXX_Size() int {
return m.Size()
}
func (m *MsgUpdateParamsResponse) XXX_DiscardUnknown() {
xxx_messageInfo_MsgUpdateParamsResponse.DiscardUnknown(m)
}
var xxx_messageInfo_MsgUpdateParamsResponse proto.InternalMessageInfo
func init() {
proto.RegisterType((*MsgSetRecord)(nil), "cerc.registry.v1.MsgSetRecord")
proto.RegisterType((*MsgSetRecordResponse)(nil), "cerc.registry.v1.MsgSetRecordResponse")
@ -1062,77 +1159,86 @@ func init() {
proto.RegisterType((*MsgDissociateRecordsResponse)(nil), "cerc.registry.v1.MsgDissociateRecordsResponse")
proto.RegisterType((*MsgReassociateRecords)(nil), "cerc.registry.v1.MsgReassociateRecords")
proto.RegisterType((*MsgReassociateRecordsResponse)(nil), "cerc.registry.v1.MsgReassociateRecordsResponse")
proto.RegisterType((*MsgUpdateParams)(nil), "cerc.registry.v1.MsgUpdateParams")
proto.RegisterType((*MsgUpdateParamsResponse)(nil), "cerc.registry.v1.MsgUpdateParamsResponse")
}
func init() { proto.RegisterFile("cerc/registry/v1/tx.proto", fileDescriptor_3c6eb2e5a4d8fa03) }
var fileDescriptor_3c6eb2e5a4d8fa03 = []byte{
// 1036 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x97, 0x41, 0x6f, 0xe3, 0x44,
0x14, 0xc7, 0x3b, 0xc9, 0x6e, 0x4b, 0x5e, 0xd8, 0x2a, 0x6b, 0xca, 0x6e, 0xea, 0xa6, 0x76, 0x3a,
0x6d, 0xd2, 0x6c, 0x4b, 0x63, 0xb6, 0x9c, 0xe8, 0x89, 0x8d, 0x10, 0x52, 0x0f, 0x41, 0xc8, 0x15,
0x17, 0x2e, 0x91, 0x1b, 0x8f, 0xbc, 0x46, 0x89, 0xa7, 0x78, 0xbc, 0xcd, 0x46, 0x02, 0x09, 0xf6,
0x80, 0x04, 0x12, 0x12, 0x12, 0x02, 0x89, 0x03, 0x47, 0x2e, 0x9c, 0xf6, 0xc6, 0x57, 0xd8, 0xe3,
0x0a, 0x2e, 0x9c, 0x22, 0xd4, 0x22, 0xed, 0xbd, 0x9f, 0x00, 0x79, 0x6c, 0x4f, 0xec, 0xd8, 0x4e,
0x03, 0xda, 0xbd, 0x4d, 0xe6, 0xfd, 0xfd, 0xfe, 0xbf, 0x79, 0x6f, 0xc6, 0x9e, 0xc0, 0x7a, 0x9f,
0xb8, 0x7d, 0xcd, 0x25, 0x96, 0xcd, 0x3c, 0x77, 0xac, 0x9d, 0xdf, 0xd7, 0xbc, 0xc7, 0xed, 0x33,
0x97, 0x7a, 0x54, 0xaa, 0xf8, 0xa1, 0x76, 0x14, 0x6a, 0x9f, 0xdf, 0x97, 0x6b, 0x16, 0xa5, 0xd6,
0x80, 0x68, 0xc6, 0x99, 0xad, 0x19, 0x8e, 0x43, 0x3d, 0xc3, 0xb3, 0xa9, 0xc3, 0x02, 0xbd, 0xbc,
0x66, 0x51, 0x8b, 0xf2, 0xa1, 0xe6, 0x8f, 0xc2, 0xd9, 0xbb, 0x7d, 0xca, 0x86, 0x94, 0x69, 0x43,
0x66, 0xf9, 0xd9, 0x87, 0xcc, 0x0a, 0x03, 0x6a, 0xca, 0x59, 0x58, 0x71, 0x01, 0xfe, 0x0d, 0xc1,
0xeb, 0x5d, 0x66, 0x9d, 0x10, 0x4f, 0x27, 0x7d, 0xea, 0x9a, 0xd2, 0x11, 0xac, 0x9c, 0x52, 0xc7,
0xec, 0xd9, 0x66, 0x15, 0xd5, 0x51, 0xab, 0xd4, 0xd9, 0xba, 0x9a, 0xa8, 0x9b, 0x9f, 0x32, 0xea,
0x1c, 0xe1, 0x30, 0x80, 0xeb, 0x63, 0x63, 0x38, 0x98, 0xfe, 0xd4, 0x97, 0xfd, 0xd1, 0xb1, 0x29,
0xdd, 0x81, 0x65, 0x66, 0x5b, 0x0e, 0x71, 0xab, 0x05, 0xff, 0x51, 0x3d, 0xfc, 0x25, 0xbd, 0x0b,
0x2b, 0x67, 0xc6, 0x78, 0x40, 0x0d, 0xb3, 0x5a, 0xac, 0xa3, 0x56, 0xf9, 0x70, 0xbd, 0x3d, 0xbb,
0xec, 0xf6, 0x47, 0x81, 0xa0, 0x73, 0xe3, 0xd9, 0x44, 0x5d, 0xd2, 0x23, 0xfd, 0x51, 0xf9, 0xc9,
0x8b, 0xa7, 0x7b, 0x61, 0x1e, 0xdc, 0x84, 0xb5, 0x38, 0xab, 0x4e, 0xd8, 0x19, 0x75, 0x18, 0x91,
0x56, 0xa1, 0x10, 0xe1, 0xea, 0x05, 0xdb, 0xc4, 0xbf, 0x22, 0x58, 0x09, 0xf3, 0x49, 0x6f, 0xc3,
0xb2, 0xcb, 0xd5, 0x3c, 0x5e, 0x3e, 0xac, 0xa6, 0xad, 0xc3, 0x6c, 0xa1, 0x4e, 0x7a, 0x08, 0xe0,
0xfb, 0x19, 0xde, 0x23, 0x97, 0xb0, 0x6a, 0xa1, 0x5e, 0x6c, 0x95, 0x0f, 0x37, 0xd2, 0x4f, 0x9d,
0x44, 0x9a, 0xce, 0xbe, 0x8f, 0x7c, 0x35, 0x51, 0xb7, 0x83, 0x2a, 0x4d, 0x1f, 0x8e, 0x0a, 0x15,
0x9b, 0xd1, 0x63, 0xb9, 0xf1, 0xc7, 0x00, 0xc1, 0x7a, 0x3e, 0x34, 0x86, 0x44, 0xaa, 0x40, 0x71,
0xe0, 0x3a, 0xe1, 0x32, 0xfc, 0xa1, 0x3f, 0xd3, 0xb7, 0xcd, 0xb0, 0x98, 0xfe, 0x30, 0x56, 0xe1,
0x62, 0xbc, 0xc2, 0xc9, 0x32, 0xad, 0x81, 0x34, 0x4d, 0x1b, 0x15, 0x09, 0x9b, 0xf0, 0x46, 0x97,
0x59, 0x3a, 0x61, 0xc4, 0x3d, 0x27, 0x0f, 0x1e, 0x79, 0x0f, 0xa9, 0x6b, 0x7b, 0x63, 0x49, 0x82,
0x1b, 0x8e, 0x31, 0x24, 0xa1, 0x2d, 0x1f, 0xe7, 0xf6, 0x71, 0x0d, 0x6e, 0xd2, 0xd1, 0xd4, 0x3c,
0xf8, 0x91, 0xf4, 0xde, 0x84, 0x8d, 0x0c, 0x17, 0x01, 0xf1, 0x2d, 0xe2, 0x14, 0x27, 0xc4, 0x13,
0xb1, 0x0e, 0x75, 0xcc, 0x4c, 0x8a, 0xd8, 0x4e, 0x2c, 0xfc, 0xff, 0x9d, 0x38, 0xa7, 0x4e, 0x01,
0xeb, 0x2c, 0x8b, 0x60, 0xfd, 0x00, 0x6e, 0x75, 0x99, 0xf5, 0x3e, 0x19, 0x10, 0x8f, 0xe4, 0x34,
0x28, 0xa7, 0x50, 0x49, 0x9b, 0xbb, 0xf0, 0x66, 0x22, 0x8f, 0x30, 0x18, 0xc3, 0x2a, 0xaf, 0x95,
0x43, 0x46, 0xe1, 0xe1, 0xeb, 0x40, 0x29, 0xd8, 0x84, 0xd3, 0xe3, 0xd7, 0xb8, 0x9a, 0xa8, 0x5b,
0xc1, 0xa2, 0x45, 0x28, 0x5a, 0xf6, 0x74, 0x42, 0x7f, 0x2d, 0x18, 0xe7, 0x1f, 0xc2, 0x24, 0x53,
0x15, 0xee, 0x24, 0xad, 0x05, 0xd4, 0xef, 0x08, 0x2a, 0x5d, 0x66, 0x3d, 0x60, 0x8c, 0xf6, 0x6d,
0xc3, 0x23, 0xbc, 0x3d, 0x2f, 0x83, 0xeb, 0x95, 0xb7, 0x53, 0x86, 0xea, 0x2c, 0xb8, 0x58, 0xd5,
0xe7, 0x70, 0xdb, 0xef, 0x81, 0xfd, 0xd2, 0x57, 0xb5, 0x50, 0xb5, 0x37, 0x60, 0x3d, 0xe5, 0x2e,
0xd0, 0x46, 0xfc, 0xa5, 0x36, 0x0d, 0x06, 0xfd, 0x60, 0xaf, 0xe2, 0x45, 0x9c, 0xa4, 0x52, 0xa0,
0x96, 0x65, 0x2c, 0xc0, 0xfe, 0x40, 0x7c, 0xe3, 0xea, 0xc4, 0x98, 0x45, 0x3b, 0x86, 0xb2, 0x43,
0x46, 0xbd, 0x24, 0xde, 0xbd, 0xab, 0x89, 0xda, 0x08, 0xf0, 0x62, 0xc1, 0x08, 0x31, 0x3e, 0xa5,
0x97, 0x1c, 0x32, 0xea, 0x04, 0xa4, 0xc7, 0x50, 0xa6, 0x03, 0xb3, 0x97, 0xdc, 0x19, 0xb1, 0x54,
0xb1, 0x60, 0x94, 0x2a, 0x3e, 0xa5, 0x97, 0xe8, 0xc0, 0xec, 0xfc, 0x87, 0x4d, 0xa2, 0xc2, 0x66,
0xe6, 0x9a, 0xa2, 0x55, 0x1f, 0x7e, 0x5d, 0x86, 0x62, 0x97, 0x59, 0xd2, 0x18, 0x4a, 0xd3, 0x8f,
0xa2, 0x92, 0x7e, 0xfd, 0xc7, 0x3f, 0x44, 0x72, 0x73, 0x7e, 0x5c, 0x94, 0x74, 0xe7, 0xc9, 0x9f,
0xff, 0xfc, 0x50, 0x50, 0x70, 0x4d, 0x4b, 0x7d, 0x97, 0x19, 0xf1, 0x7a, 0xe1, 0x07, 0xe8, 0x2b,
0x04, 0xe5, 0xf8, 0x5b, 0xa1, 0x9e, 0x99, 0x3d, 0xa6, 0x90, 0x5b, 0xd7, 0x29, 0x04, 0x41, 0x93,
0x13, 0xd4, 0xb1, 0xa2, 0x65, 0xdc, 0x0c, 0xfc, 0x26, 0x85, 0x0c, 0xdf, 0x20, 0xb8, 0x95, 0x7c,
0x07, 0xe0, 0x4c, 0x8f, 0x84, 0x46, 0xde, 0xbb, 0x5e, 0x23, 0x48, 0x5a, 0x9c, 0x04, 0xe3, 0x7a,
0x9a, 0x44, 0x34, 0x87, 0xf7, 0x59, 0xfa, 0x0e, 0xc1, 0xea, 0xcc, 0xd1, 0xdd, 0xce, 0x34, 0x4a,
0x8a, 0xe4, 0xfd, 0x05, 0x44, 0x02, 0xe7, 0x1e, 0xc7, 0xd9, 0xc6, 0x5b, 0x69, 0x1c, 0xd3, 0x4e,
0xf2, 0xfc, 0x8c, 0xe0, 0x76, 0xfa, 0xbc, 0x36, 0xaf, 0x71, 0x0b, 0x75, 0x72, 0x7b, 0x31, 0x9d,
0x00, 0x7b, 0x8b, 0x83, 0x35, 0xf1, 0xce, 0x5c, 0x30, 0x37, 0xa4, 0xf8, 0x05, 0x81, 0x94, 0x71,
0x62, 0x77, 0x73, 0x36, 0xc8, 0xac, 0x50, 0xd6, 0x16, 0x14, 0x0a, 0xbc, 0x03, 0x8e, 0xb7, 0x8b,
0x1b, 0x59, 0x1b, 0xca, 0x48, 0xf1, 0x7d, 0x06, 0x2b, 0xd1, 0x7d, 0xa7, 0x96, 0x77, 0x68, 0xfc,
0xa8, 0xbc, 0x33, 0x2f, 0x2a, 0xdc, 0x31, 0x77, 0xaf, 0x61, 0x39, 0xfb, 0x40, 0xf1, 0x7b, 0xc4,
0x17, 0x00, 0xb1, 0x8f, 0xb8, 0x9a, 0x5d, 0x7e, 0x21, 0x90, 0x77, 0xaf, 0x11, 0x08, 0xef, 0x06,
0xf7, 0x56, 0xf1, 0x66, 0x46, 0x63, 0xb8, 0x3a, 0xb0, 0xff, 0x11, 0x41, 0x25, 0x75, 0xeb, 0x6a,
0xe4, 0x94, 0x39, 0x29, 0x93, 0x0f, 0x16, 0x92, 0x09, 0xa2, 0x7d, 0x4e, 0xd4, 0xc0, 0xdb, 0x59,
0xbd, 0xe0, 0xcf, 0xf4, 0x0c, 0x81, 0xf0, 0x13, 0x82, 0x4a, 0xea, 0x1e, 0xd6, 0xc8, 0xab, 0x7a,
0x42, 0x96, 0xc3, 0x95, 0x7b, 0x93, 0x9a, 0xb3, 0x85, 0xfd, 0x2e, 0x09, 0x26, 0x7e, 0xbc, 0xe4,
0x9b, 0x5f, 0xbe, 0x78, 0xba, 0x87, 0x3a, 0xef, 0x3d, 0xbb, 0x50, 0xd0, 0xf3, 0x0b, 0x05, 0xfd,
0x7d, 0xa1, 0xa0, 0xef, 0x2f, 0x95, 0xa5, 0xe7, 0x97, 0xca, 0xd2, 0x5f, 0x97, 0xca, 0xd2, 0x27,
0x4d, 0xcb, 0xf6, 0xda, 0xe7, 0xe6, 0x69, 0xdb, 0xa3, 0x3c, 0xe1, 0x81, 0x4d, 0xb5, 0x81, 0xd1,
0xa7, 0x8e, 0xdd, 0x37, 0xb5, 0xc7, 0x22, 0xfd, 0xe9, 0x32, 0xff, 0x8b, 0xf3, 0xce, 0xbf, 0x01,
0x00, 0x00, 0xff, 0xff, 0x60, 0xd8, 0xf4, 0xdb, 0x7f, 0x0d, 0x00, 0x00,
// 1140 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x97, 0xcf, 0x6f, 0xdc, 0x44,
0x14, 0xc7, 0xe3, 0x4d, 0x9b, 0xb0, 0x6f, 0xdb, 0x90, 0x9a, 0xd0, 0x6c, 0x9c, 0x64, 0x77, 0x33,
0xc9, 0x6e, 0x7e, 0x91, 0x35, 0x0d, 0x52, 0x25, 0x72, 0x22, 0x2b, 0x84, 0x94, 0xc3, 0xa2, 0xca,
0x51, 0x2f, 0x08, 0x69, 0xe5, 0xac, 0x47, 0xae, 0xd1, 0xae, 0x67, 0xf1, 0xb8, 0x49, 0x57, 0x02,
0x09, 0x7a, 0x03, 0x09, 0x09, 0x84, 0x40, 0xe2, 0xc0, 0x91, 0x0b, 0xa7, 0x1e, 0x90, 0xf8, 0x17,
0x7a, 0xac, 0xca, 0x85, 0x53, 0x84, 0x92, 0x4a, 0xbd, 0xe7, 0x2f, 0x40, 0x9e, 0x19, 0x8f, 0xed,
0xb5, 0x9d, 0x2c, 0xa8, 0xbd, 0xcd, 0xfa, 0x7d, 0xfd, 0xbe, 0x9f, 0x79, 0xf3, 0x3c, 0x33, 0x0b,
0x0b, 0x5d, 0xec, 0x75, 0x75, 0x0f, 0xdb, 0x0e, 0xf5, 0xbd, 0xa1, 0x7e, 0x7c, 0x47, 0xf7, 0x1f,
0x35, 0x07, 0x1e, 0xf1, 0x89, 0x3a, 0x1b, 0x84, 0x9a, 0x61, 0xa8, 0x79, 0x7c, 0x47, 0x5b, 0xb2,
0x09, 0xb1, 0x7b, 0x58, 0x37, 0x07, 0x8e, 0x6e, 0xba, 0x2e, 0xf1, 0x4d, 0xdf, 0x21, 0x2e, 0xe5,
0x7a, 0x6d, 0xce, 0x26, 0x36, 0x61, 0x43, 0x3d, 0x18, 0x89, 0xa7, 0xf3, 0x5d, 0x42, 0xfb, 0x84,
0xea, 0x7d, 0x6a, 0x07, 0xd9, 0xfb, 0xd4, 0x16, 0x81, 0x6a, 0xca, 0x59, 0x5a, 0x71, 0xc1, 0x02,
0x7f, 0xb3, 0xc3, 0x53, 0xf2, 0x1f, 0x3c, 0x84, 0x7e, 0x57, 0xe0, 0x46, 0x9b, 0xda, 0x87, 0xd8,
0x37, 0x70, 0x97, 0x78, 0x96, 0xba, 0x07, 0xd3, 0x47, 0xc4, 0xb5, 0x3a, 0x8e, 0x55, 0x56, 0x6a,
0xca, 0x46, 0xb1, 0xb5, 0x72, 0x71, 0x5a, 0x5d, 0xfe, 0x8c, 0x12, 0x77, 0x0f, 0x89, 0x00, 0xaa,
0x0d, 0xcd, 0x7e, 0x2f, 0xfa, 0x69, 0x4c, 0x05, 0xa3, 0x03, 0x4b, 0xbd, 0x0d, 0x53, 0xd4, 0xb1,
0x5d, 0xec, 0x95, 0x0b, 0xc1, 0xab, 0x86, 0xf8, 0xa5, 0xbe, 0x0f, 0xd3, 0x03, 0x73, 0xd8, 0x23,
0xa6, 0x55, 0x9e, 0xac, 0x29, 0x1b, 0xa5, 0xdd, 0x85, 0xe6, 0x68, 0x45, 0x9a, 0xf7, 0xb8, 0xa0,
0x75, 0xed, 0xe9, 0x69, 0x75, 0xc2, 0x08, 0xf5, 0x7b, 0xa5, 0xc7, 0x2f, 0x9f, 0x6c, 0x89, 0x3c,
0xa8, 0x01, 0x73, 0x71, 0x56, 0x03, 0xd3, 0x01, 0x71, 0x29, 0x56, 0x67, 0xa0, 0x10, 0xe2, 0x1a,
0x05, 0xc7, 0x42, 0xbf, 0x29, 0x30, 0x2d, 0xf2, 0xa9, 0xef, 0xc2, 0x94, 0xc7, 0xd4, 0x2c, 0x5e,
0xda, 0x2d, 0xa7, 0xad, 0x45, 0x36, 0xa1, 0x53, 0x1f, 0x00, 0x04, 0x7e, 0xa6, 0xff, 0xd0, 0xc3,
0xb4, 0x5c, 0xa8, 0x4d, 0x6e, 0x94, 0x76, 0x17, 0xd3, 0x6f, 0x1d, 0x86, 0x9a, 0xd6, 0x76, 0x80,
0x7c, 0x71, 0x5a, 0x5d, 0xe5, 0x55, 0x8a, 0x5e, 0x0e, 0x0b, 0x15, 0x7b, 0x62, 0xc4, 0x72, 0xa3,
0xfb, 0x00, 0x7c, 0x3e, 0x1f, 0x9b, 0x7d, 0xac, 0xce, 0xc2, 0x64, 0xcf, 0x73, 0xc5, 0x34, 0x82,
0x61, 0xf0, 0xa4, 0xeb, 0x58, 0xa2, 0x98, 0xc1, 0x30, 0x56, 0xe1, 0xc9, 0x78, 0x85, 0x93, 0x65,
0x9a, 0x03, 0x35, 0x4a, 0x1b, 0x16, 0x09, 0x59, 0xf0, 0x56, 0x9b, 0xda, 0x06, 0xa6, 0xd8, 0x3b,
0xc6, 0xfb, 0x0f, 0xfd, 0x07, 0xc4, 0x73, 0xfc, 0xa1, 0xaa, 0xc2, 0x35, 0xd7, 0xec, 0x63, 0x61,
0xcb, 0xc6, 0xb9, 0xeb, 0x38, 0x07, 0xd7, 0xc9, 0x49, 0x64, 0xce, 0x7f, 0x24, 0xbd, 0x97, 0x61,
0x31, 0xc3, 0x45, 0x42, 0x7c, 0xab, 0x30, 0x8a, 0x43, 0xec, 0xcb, 0x58, 0x8b, 0xb8, 0x56, 0x26,
0x45, 0xac, 0x13, 0x0b, 0xff, 0xbf, 0x13, 0x2f, 0xa9, 0x13, 0x67, 0x1d, 0x65, 0x91, 0xac, 0x1f,
0xc1, 0xcd, 0x36, 0xb5, 0x3f, 0xc4, 0x3d, 0xec, 0xe3, 0x9c, 0x05, 0xca, 0x29, 0x54, 0xd2, 0x66,
0x1e, 0xde, 0x4e, 0xe4, 0x91, 0x06, 0x43, 0x98, 0x61, 0xb5, 0x72, 0xf1, 0x89, 0xf8, 0xf8, 0x5a,
0x50, 0xe4, 0x4d, 0x18, 0x7d, 0x7e, 0xf5, 0x8b, 0xd3, 0xea, 0x0a, 0x9f, 0xb4, 0x0c, 0x85, 0xd3,
0x8e, 0x1e, 0x18, 0x6f, 0xf0, 0x71, 0xfe, 0x47, 0x98, 0x64, 0x2a, 0xc3, 0xed, 0xa4, 0xb5, 0x84,
0xfa, 0x53, 0x81, 0xd9, 0x36, 0xb5, 0xf7, 0x29, 0x25, 0x5d, 0xc7, 0xf4, 0x31, 0x5b, 0x9e, 0x57,
0xc1, 0xf5, 0xda, 0x97, 0x53, 0x83, 0xf2, 0x28, 0xb8, 0x9c, 0xd5, 0x17, 0x70, 0x2b, 0x58, 0x03,
0xe7, 0x95, 0xcf, 0x6a, 0xac, 0x6a, 0x2f, 0xc2, 0x42, 0xca, 0x5d, 0xa2, 0x9d, 0xb0, 0x4d, 0x2d,
0x0a, 0xf2, 0xf5, 0xa0, 0xaf, 0x63, 0x23, 0x4e, 0x52, 0x55, 0x60, 0x29, 0xcb, 0x58, 0x82, 0x3d,
0x57, 0x58, 0xe3, 0x1a, 0xd8, 0x1c, 0x45, 0x3b, 0x80, 0x92, 0x8b, 0x4f, 0x3a, 0x49, 0xbc, 0xcd,
0x8b, 0xd3, 0x6a, 0x9d, 0xe3, 0xc5, 0x82, 0x21, 0x62, 0xfc, 0x91, 0x51, 0x74, 0xf1, 0x49, 0x8b,
0x93, 0x1e, 0x40, 0x89, 0xf4, 0xac, 0x4e, 0xb2, 0x33, 0x62, 0xa9, 0x62, 0xc1, 0x30, 0x55, 0xfc,
0x91, 0x51, 0x24, 0x3d, 0xab, 0xf5, 0x1f, 0x9a, 0xa4, 0x0a, 0xcb, 0x99, 0x73, 0x92, 0xb3, 0xfe,
0x41, 0x81, 0x37, 0xdb, 0xd4, 0xbe, 0x3f, 0xb0, 0x4c, 0x1f, 0xdf, 0x33, 0x3d, 0xb3, 0x4f, 0xd5,
0xbb, 0x50, 0x34, 0xc3, 0x2d, 0x42, 0xcc, 0xb6, 0xfc, 0xfc, 0x8f, 0x9d, 0x39, 0x71, 0x92, 0xee,
0x5b, 0x96, 0x87, 0x29, 0x3d, 0xf4, 0x3d, 0xc7, 0xb5, 0x8d, 0x48, 0xaa, 0xde, 0x85, 0xa9, 0x01,
0xcb, 0xc0, 0xe6, 0x95, 0x79, 0xf6, 0x70, 0x07, 0x71, 0xea, 0x09, 0xf5, 0xde, 0x4c, 0x40, 0x1c,
0xe5, 0x41, 0x0b, 0x30, 0x3f, 0x82, 0x14, 0xe2, 0xee, 0xbe, 0x28, 0xc1, 0x64, 0x9b, 0xda, 0xea,
0x10, 0x8a, 0xd1, 0x19, 0x5e, 0x49, 0xfb, 0xc4, 0xcf, 0x4d, 0xad, 0x71, 0x79, 0x5c, 0xd6, 0x62,
0xed, 0xf1, 0x5f, 0x2f, 0x7e, 0x2c, 0x54, 0xd0, 0x92, 0x9e, 0xba, 0x61, 0x50, 0xec, 0x77, 0xc4,
0x79, 0xf9, 0xb5, 0x02, 0xa5, 0xf8, 0x26, 0x56, 0xcb, 0xcc, 0x1e, 0x53, 0x68, 0x1b, 0x57, 0x29,
0x24, 0x41, 0x83, 0x11, 0xd4, 0x50, 0x45, 0xcf, 0xb8, 0xe3, 0x04, 0x3d, 0x25, 0x18, 0xbe, 0x51,
0xe0, 0x66, 0x72, 0xcb, 0x42, 0x99, 0x1e, 0x09, 0x8d, 0xb6, 0x75, 0xb5, 0x46, 0x92, 0x6c, 0x30,
0x12, 0x84, 0x6a, 0x69, 0x12, 0xd9, 0x4b, 0xac, 0x2d, 0xd5, 0xef, 0x14, 0x98, 0x19, 0xd9, 0x69,
0x56, 0x33, 0x8d, 0x92, 0x22, 0x6d, 0x7b, 0x0c, 0x91, 0xc4, 0xd9, 0x64, 0x38, 0xab, 0x68, 0x25,
0x8d, 0x63, 0x39, 0x49, 0x9e, 0x5f, 0x14, 0xb8, 0x95, 0xde, 0x5e, 0x1a, 0x57, 0xb8, 0x09, 0x9d,
0xd6, 0x1c, 0x4f, 0x27, 0xc1, 0xde, 0x61, 0x60, 0x0d, 0xb4, 0x76, 0x29, 0x98, 0x27, 0x28, 0x7e,
0x55, 0x40, 0xcd, 0xd8, 0x60, 0xd6, 0x73, 0x1a, 0x64, 0x54, 0xa8, 0xe9, 0x63, 0x0a, 0x25, 0xde,
0x0e, 0xc3, 0x5b, 0x47, 0xf5, 0xac, 0x86, 0x32, 0x53, 0x7c, 0x9f, 0xc3, 0x74, 0x78, 0x3d, 0x5b,
0xca, 0xfb, 0x68, 0x82, 0xa8, 0xb6, 0x76, 0x59, 0x54, 0xba, 0x23, 0xe6, 0xbe, 0x84, 0xb4, 0xec,
0x0f, 0x8a, 0x5d, 0x7b, 0xbe, 0x04, 0x88, 0xdd, 0x39, 0xaa, 0xd9, 0xe5, 0x97, 0x02, 0x6d, 0xfd,
0x0a, 0x81, 0xf4, 0xae, 0x33, 0xef, 0x2a, 0x5a, 0xce, 0x58, 0x18, 0xa6, 0xe6, 0xf6, 0x3f, 0x29,
0x30, 0x9b, 0xba, 0x24, 0xd6, 0x73, 0xca, 0x9c, 0x94, 0x69, 0x3b, 0x63, 0xc9, 0x24, 0xd1, 0x36,
0x23, 0xaa, 0xa3, 0xd5, 0xac, 0xb5, 0x60, 0xef, 0x74, 0xa2, 0xbd, 0xf4, 0x67, 0x05, 0x66, 0x53,
0xd7, 0xc6, 0x7a, 0x5e, 0xd5, 0x13, 0xb2, 0x1c, 0xae, 0xdc, 0x8b, 0xdf, 0x25, 0x2d, 0x1c, 0xac,
0x92, 0x64, 0xe2, 0x9f, 0xd7, 0xa7, 0x70, 0x23, 0x71, 0x58, 0xac, 0x64, 0x9a, 0xc5, 0x25, 0xda,
0xe6, 0x95, 0x92, 0x90, 0x45, 0xbb, 0xfe, 0xd5, 0xcb, 0x27, 0x5b, 0x4a, 0xeb, 0x83, 0xa7, 0x67,
0x15, 0xe5, 0xd9, 0x59, 0x45, 0xf9, 0xe7, 0xac, 0xa2, 0x7c, 0x7f, 0x5e, 0x99, 0x78, 0x76, 0x5e,
0x99, 0xf8, 0xfb, 0xbc, 0x32, 0xf1, 0x49, 0xc3, 0x76, 0xfc, 0xe6, 0xb1, 0x75, 0xd4, 0x0c, 0xfe,
0xd9, 0x61, 0xaf, 0xbb, 0xe3, 0x10, 0xbd, 0x67, 0x76, 0x89, 0xeb, 0x74, 0x2d, 0xfd, 0x91, 0x84,
0x3f, 0x9a, 0x62, 0xff, 0xf7, 0xde, 0xfb, 0x37, 0x00, 0x00, 0xff, 0xff, 0xe7, 0x1e, 0x96, 0xe1,
0xa7, 0x0e, 0x00, 0x00,
}
// Reference imports to suppress errors if they are not otherwise used.
@ -1167,6 +1273,9 @@ type MsgClient interface {
ReserveAuthority(ctx context.Context, in *MsgReserveAuthority, opts ...grpc.CallOption) (*MsgReserveAuthorityResponse, error)
// SetAuthorityBond
SetAuthorityBond(ctx context.Context, in *MsgSetAuthorityBond, opts ...grpc.CallOption) (*MsgSetAuthorityBondResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error)
}
type msgClient struct {
@ -1267,6 +1376,15 @@ func (c *msgClient) SetAuthorityBond(ctx context.Context, in *MsgSetAuthorityBon
return out, nil
}
func (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) {
out := new(MsgUpdateParamsResponse)
err := c.cc.Invoke(ctx, "/cerc.registry.v1.Msg/UpdateParams", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// MsgServer is the server API for Msg service.
type MsgServer interface {
// SetRecord records a new record with given payload and bond id
@ -1289,6 +1407,9 @@ type MsgServer interface {
ReserveAuthority(context.Context, *MsgReserveAuthority) (*MsgReserveAuthorityResponse, error)
// SetAuthorityBond
SetAuthorityBond(context.Context, *MsgSetAuthorityBond) (*MsgSetAuthorityBondResponse, error)
// UpdateParams defines an operation for updating the x/staking module
// parameters.
UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error)
}
// UnimplementedMsgServer can be embedded to have forward compatible implementations.
@ -1325,6 +1446,9 @@ func (*UnimplementedMsgServer) ReserveAuthority(ctx context.Context, req *MsgRes
func (*UnimplementedMsgServer) SetAuthorityBond(ctx context.Context, req *MsgSetAuthorityBond) (*MsgSetAuthorityBondResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method SetAuthorityBond not implemented")
}
func (*UnimplementedMsgServer) UpdateParams(ctx context.Context, req *MsgUpdateParams) (*MsgUpdateParamsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateParams not implemented")
}
func RegisterMsgServer(s grpc1.Server, srv MsgServer) {
s.RegisterService(&_Msg_serviceDesc, srv)
@ -1510,6 +1634,24 @@ func _Msg_SetAuthorityBond_Handler(srv interface{}, ctx context.Context, dec fun
return interceptor(ctx, in, info, handler)
}
func _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(MsgUpdateParams)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MsgServer).UpdateParams(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/cerc.registry.v1.Msg/UpdateParams",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MsgServer).UpdateParams(ctx, req.(*MsgUpdateParams))
}
return interceptor(ctx, in, info, handler)
}
var _Msg_serviceDesc = grpc.ServiceDesc{
ServiceName: "cerc.registry.v1.Msg",
HandlerType: (*MsgServer)(nil),
@ -1554,6 +1696,10 @@ var _Msg_serviceDesc = grpc.ServiceDesc{
MethodName: "SetAuthorityBond",
Handler: _Msg_SetAuthorityBond_Handler,
},
{
MethodName: "UpdateParams",
Handler: _Msg_UpdateParams_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "cerc/registry/v1/tx.proto",
@ -2260,6 +2406,69 @@ func (m *MsgReassociateRecordsResponse) MarshalToSizedBuffer(dAtA []byte) (int,
return len(dAtA) - i, nil
}
func (m *MsgUpdateParams) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalToSizedBuffer(dAtA[:size])
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *MsgUpdateParams) MarshalTo(dAtA []byte) (int, error) {
size := m.Size()
return m.MarshalToSizedBuffer(dAtA[:size])
}
func (m *MsgUpdateParams) MarshalToSizedBuffer(dAtA []byte) (int, error) {
i := len(dAtA)
_ = i
var l int
_ = l
{
size, err := m.Params.MarshalToSizedBuffer(dAtA[:i])
if err != nil {
return 0, err
}
i -= size
i = encodeVarintTx(dAtA, i, uint64(size))
}
i--
dAtA[i] = 0x12
if len(m.Authority) > 0 {
i -= len(m.Authority)
copy(dAtA[i:], m.Authority)
i = encodeVarintTx(dAtA, i, uint64(len(m.Authority)))
i--
dAtA[i] = 0xa
}
return len(dAtA) - i, nil
}
func (m *MsgUpdateParamsResponse) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalToSizedBuffer(dAtA[:size])
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *MsgUpdateParamsResponse) MarshalTo(dAtA []byte) (int, error) {
size := m.Size()
return m.MarshalToSizedBuffer(dAtA[:size])
}
func (m *MsgUpdateParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
i := len(dAtA)
_ = i
var l int
_ = l
return len(dAtA) - i, nil
}
func encodeVarintTx(dAtA []byte, offset int, v uint64) int {
offset -= sovTx(v)
base := offset
@ -2576,6 +2785,30 @@ func (m *MsgReassociateRecordsResponse) Size() (n int) {
return n
}
func (m *MsgUpdateParams) Size() (n int) {
if m == nil {
return 0
}
var l int
_ = l
l = len(m.Authority)
if l > 0 {
n += 1 + l + sovTx(uint64(l))
}
l = m.Params.Size()
n += 1 + l + sovTx(uint64(l))
return n
}
func (m *MsgUpdateParamsResponse) Size() (n int) {
if m == nil {
return 0
}
var l int
_ = l
return n
}
func sovTx(x uint64) (n int) {
return (math_bits.Len64(x|1) + 6) / 7
}
@ -4567,6 +4800,171 @@ func (m *MsgReassociateRecordsResponse) Unmarshal(dAtA []byte) error {
}
return nil
}
func (m *MsgUpdateParams) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: MsgUpdateParams: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: MsgUpdateParams: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthTx
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return ErrInvalidLengthTx
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Authority = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
msglen |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthTx
}
postIndex := iNdEx + msglen
if postIndex < 0 {
return ErrInvalidLengthTx
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipTx(dAtA[iNdEx:])
if err != nil {
return err
}
if (skippy < 0) || (iNdEx+skippy) < 0 {
return ErrInvalidLengthTx
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *MsgUpdateParamsResponse) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowTx
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: MsgUpdateParamsResponse: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: MsgUpdateParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
default:
iNdEx = preIndex
skippy, err := skipTx(dAtA[iNdEx:])
if err != nil {
return err
}
if (skippy < 0) || (iNdEx+skippy) < 0 {
return ErrInvalidLengthTx
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipTx(dAtA []byte) (n int, err error) {
l := len(dAtA)
iNdEx := 0