list keys working as expected, datastructure not pretty

This commit is contained in:
A.Unger
2020-02-03 14:16:30 +01:00
parent f5ae339125
commit be26b67a0c
6 changed files with 132 additions and 25 deletions
+63 -18
View File
@@ -6,6 +6,7 @@ package proto
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
_ "github.com/golang/protobuf/ptypes/empty"
math "math"
)
@@ -239,33 +240,77 @@ func (m *Query) GetKey() string {
return ""
}
type Records struct {
Records []*Record `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Records) Reset() { *m = Records{} }
func (m *Records) String() string { return proto.CompactTextString(m) }
func (*Records) ProtoMessage() {}
func (*Records) Descriptor() ([]byte, []int) {
return fileDescriptor_e3c84319968a576b, []int{5}
}
func (m *Records) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Records.Unmarshal(m, b)
}
func (m *Records) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Records.Marshal(b, m, deterministic)
}
func (m *Records) XXX_Merge(src proto.Message) {
xxx_messageInfo_Records.Merge(m, src)
}
func (m *Records) XXX_Size() int {
return xxx_messageInfo_Records.Size(m)
}
func (m *Records) XXX_DiscardUnknown() {
xxx_messageInfo_Records.DiscardUnknown(m)
}
var xxx_messageInfo_Records proto.InternalMessageInfo
func (m *Records) GetRecords() []*Record {
if m != nil {
return m.Records
}
return nil
}
func init() {
proto.RegisterType((*Record)(nil), "settings.Record")
proto.RegisterType((*Payload)(nil), "settings.Payload")
proto.RegisterType((*Account)(nil), "settings.Account")
proto.RegisterType((*Phoenix)(nil), "settings.Phoenix")
proto.RegisterType((*Query)(nil), "settings.Query")
proto.RegisterType((*Records)(nil), "settings.Records")
}
func init() { proto.RegisterFile("pkg/proto/v0/accounts.proto", fileDescriptor_e3c84319968a576b) }
var fileDescriptor_e3c84319968a576b = []byte{
// 264 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x51, 0xcd, 0x4e, 0x83, 0x40,
0x10, 0x0e, 0x22, 0xc5, 0x4e, 0x0f, 0xad, 0x13, 0x0f, 0x55, 0x0f, 0x12, 0x4e, 0x18, 0x13, 0x30,
0xf5, 0x01, 0x8c, 0xbd, 0xf4, 0xa8, 0x2e, 0x37, 0x6f, 0xeb, 0x32, 0x2d, 0xa4, 0xca, 0x92, 0x65,
0xdb, 0xc8, 0xdb, 0x9b, 0xee, 0x2e, 0xd6, 0x86, 0x13, 0xc3, 0xf7, 0x37, 0x5f, 0x66, 0xe1, 0xb6,
0xd9, 0x6e, 0xb2, 0x46, 0x49, 0x2d, 0xb3, 0xfd, 0x63, 0xc6, 0x85, 0x90, 0xbb, 0x5a, 0xb7, 0xa9,
0x41, 0xf0, 0xa2, 0x25, 0xad, 0xab, 0x7a, 0xd3, 0xc6, 0x2b, 0x18, 0x31, 0x12, 0x52, 0x15, 0x38,
0x03, 0x7f, 0x4b, 0xdd, 0xdc, 0x8b, 0xbc, 0x64, 0xcc, 0x0e, 0x23, 0x3e, 0x40, 0xd8, 0xf0, 0xee,
0x4b, 0xf2, 0x62, 0x7e, 0x16, 0x79, 0xc9, 0x64, 0x71, 0x99, 0xf6, 0xbe, 0xf4, 0xcd, 0x12, 0xac,
0x57, 0xc4, 0x02, 0x42, 0x87, 0x19, 0x5f, 0x29, 0xa9, 0xae, 0x7e, 0x4c, 0xda, 0xa9, 0xcf, 0x12,
0xac, 0x57, 0x1c, 0xc4, 0xae, 0xdc, 0x70, 0xc9, 0x8b, 0x25, 0x58, 0xaf, 0x88, 0x9f, 0x21, 0x74,
0x18, 0x22, 0x9c, 0xd7, 0xfc, 0x9b, 0x5c, 0x5f, 0x33, 0x63, 0x04, 0x93, 0x82, 0x6b, 0x7a, 0x5d,
0x2f, 0x2b, 0xa5, 0x4b, 0x93, 0x37, 0x66, 0xff, 0xa1, 0xf8, 0x0e, 0x42, 0xd7, 0x00, 0xaf, 0x20,
0xd0, 0x25, 0xfd, 0x25, 0xd8, 0x9f, 0xf8, 0x1a, 0x82, 0xf7, 0x1d, 0xa9, 0x6e, 0x78, 0x8e, 0xc5,
0x1a, 0xa6, 0xb9, 0x6b, 0x96, 0x93, 0xda, 0x57, 0x82, 0xf0, 0x1e, 0xfc, 0x9c, 0x34, 0xce, 0x8e,
0x95, 0xed, 0x31, 0x6f, 0x06, 0x08, 0x26, 0xe0, 0xaf, 0x48, 0xe3, 0xf4, 0x48, 0x98, 0x3d, 0x43,
0xe5, 0x32, 0xfc, 0x08, 0xcc, 0x2b, 0x7d, 0x8e, 0xcc, 0xe7, 0xe9, 0x37, 0x00, 0x00, 0xff, 0xff,
0x82, 0xf2, 0xd3, 0x55, 0xcb, 0x01, 0x00, 0x00,
// 327 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x91, 0x41, 0x4f, 0xc2, 0x40,
0x10, 0x85, 0x53, 0x0b, 0xac, 0x0c, 0x07, 0x60, 0x62, 0x0c, 0xc2, 0xc1, 0xa6, 0xa7, 0xaa, 0x49,
0xab, 0x18, 0xcf, 0x46, 0x12, 0xc3, 0xc5, 0x44, 0x5d, 0x6e, 0xde, 0x6a, 0x19, 0x4a, 0x03, 0x74,
0x9b, 0x76, 0x21, 0xf6, 0xa7, 0xf8, 0x6f, 0x0d, 0xbb, 0x5d, 0x51, 0xeb, 0xa9, 0xd3, 0xf7, 0xbe,
0x99, 0x7d, 0x99, 0x81, 0x51, 0xb6, 0x8a, 0x83, 0x2c, 0x17, 0x52, 0x04, 0xbb, 0xeb, 0x20, 0x8c,
0x22, 0xb1, 0x4d, 0x65, 0xe1, 0x2b, 0x05, 0x8f, 0x0b, 0x92, 0x32, 0x49, 0xe3, 0x62, 0x38, 0x8a,
0x85, 0x88, 0xd7, 0xa4, 0xc9, 0xf7, 0xed, 0x22, 0xa0, 0x4d, 0x26, 0x4b, 0x8d, 0xb9, 0x53, 0x68,
0x71, 0x8a, 0x44, 0x3e, 0xc7, 0x1e, 0xd8, 0x2b, 0x2a, 0x07, 0x96, 0x63, 0x79, 0x6d, 0xbe, 0x2f,
0xf1, 0x0a, 0x58, 0x16, 0x96, 0x6b, 0x11, 0xce, 0x07, 0x47, 0x8e, 0xe5, 0x75, 0xc6, 0x7d, 0xdf,
0x0c, 0xf5, 0x5f, 0xb4, 0xc1, 0x0d, 0xe1, 0x46, 0xc0, 0x2a, 0x4d, 0xf5, 0x2d, 0x05, 0xa5, 0xc9,
0x87, 0x9a, 0xf6, 0xbb, 0x4f, 0x1b, 0xdc, 0x10, 0x7b, 0xb8, 0x4a, 0x5e, 0x7f, 0xe4, 0x41, 0x1b,
0xdc, 0x10, 0xee, 0x3d, 0xb0, 0x4a, 0x43, 0x84, 0x46, 0x1a, 0x6e, 0xa8, 0xca, 0xab, 0x6a, 0x74,
0xa0, 0x33, 0x0f, 0x25, 0x3d, 0x2f, 0x26, 0x49, 0x2e, 0x97, 0x6a, 0x5e, 0x9b, 0xff, 0x94, 0xdc,
0x73, 0x60, 0x55, 0x02, 0x3c, 0x81, 0xa6, 0x5c, 0xd2, 0xf7, 0x04, 0xfd, 0xe3, 0x9e, 0x41, 0xf3,
0x75, 0x4b, 0x79, 0x59, 0x5f, 0x87, 0x7b, 0x07, 0x4c, 0xaf, 0xaa, 0xc0, 0x4b, 0x60, 0xb9, 0x2e,
0x07, 0x96, 0x63, 0x7b, 0x9d, 0x71, 0xef, 0x10, 0x5a, 0x33, 0xdc, 0x00, 0xe3, 0x4f, 0x0b, 0xba,
0xb3, 0xca, 0x9c, 0x51, 0xbe, 0x4b, 0x22, 0xc2, 0x0b, 0xb0, 0x67, 0x24, 0xb1, 0xd6, 0x35, 0xac,
0x29, 0xe8, 0x81, 0x3d, 0x25, 0x89, 0xdd, 0x83, 0xa1, 0xf2, 0xfd, 0x43, 0xde, 0x40, 0xe3, 0x29,
0x29, 0x24, 0x9e, 0xfa, 0xfa, 0xe0, 0xbe, 0x39, 0xb8, 0xff, 0xb8, 0x3f, 0xf8, 0xb0, 0xff, 0xb7,
0xa3, 0x98, 0xb0, 0xb7, 0xa6, 0x86, 0x5a, 0xea, 0x73, 0xfb, 0x15, 0x00, 0x00, 0xff, 0xff, 0x06,
0x2e, 0xab, 0xa7, 0x53, 0x02, 0x00, 0x00,
}
+22 -3
View File
@@ -5,13 +5,15 @@ package proto
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
import (
proto "github.com/golang/protobuf/proto"
empty "github.com/golang/protobuf/ptypes/empty"
context "context"
client "github.com/micro/go-micro/client"
server "github.com/micro/go-micro/server"
)
@@ -36,6 +38,7 @@ var _ server.Option
type SettingsService interface {
Set(ctx context.Context, in *Record, opts ...client.CallOption) (*Record, error)
Get(ctx context.Context, in *Query, opts ...client.CallOption) (*Record, error)
List(ctx context.Context, in *empty.Empty, opts ...client.CallOption) (*Records, error)
}
type settingsService struct {
@@ -76,17 +79,29 @@ func (c *settingsService) Get(ctx context.Context, in *Query, opts ...client.Cal
return out, nil
}
func (c *settingsService) List(ctx context.Context, in *empty.Empty, opts ...client.CallOption) (*Records, error) {
req := c.c.NewRequest(c.name, "SettingsService.List", in)
out := new(Records)
err := c.c.Call(ctx, req, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// Server API for SettingsService service
type SettingsServiceHandler interface {
Set(context.Context, *Record, *Record) error
Get(context.Context, *Query, *Record) error
List(context.Context, *empty.Empty, *Records) error
}
func RegisterSettingsServiceHandler(s server.Server, hdlr SettingsServiceHandler, opts ...server.HandlerOption) error {
type settingsService interface {
Set(ctx context.Context, in *Record, out *Record) error
Get(ctx context.Context, in *Query, out *Record) error
List(ctx context.Context, in *empty.Empty, out *Records) error
}
type SettingsService struct {
settingsService
@@ -106,3 +121,7 @@ func (h *settingsServiceHandler) Set(ctx context.Context, in *Record, out *Recor
func (h *settingsServiceHandler) Get(ctx context.Context, in *Query, out *Record) error {
return h.SettingsServiceHandler.Get(ctx, in, out)
}
func (h *settingsServiceHandler) List(ctx context.Context, in *empty.Empty, out *Records) error {
return h.SettingsServiceHandler.List(ctx, in, out)
}
+6
View File
@@ -2,10 +2,12 @@ syntax = "proto3";
package settings;
option go_package = "proto";
import "google/protobuf/empty.proto";
service SettingsService {
rpc Set(Record) returns (Record);
rpc Get(Query) returns (Record);
rpc List(google.protobuf.Empty) returns(Records);
}
message Record {
@@ -30,3 +32,7 @@ message Phoenix {
message Query {
string key = 1;
}
message Records {
repeated Record records = 1;
}