* Add metadata to store record * Add metadata to cockroach store * add metadata to store service implementation * fix breaking cache test * Test/fix cockroach metadata usage * fix store memory metadata bug
		
			
				
	
	
		
			1456 lines
		
	
	
		
			49 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			1456 lines
		
	
	
		
			49 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Code generated by protoc-gen-go. DO NOT EDIT.
 | |
| // versions:
 | |
| // 	protoc-gen-go v1.22.0
 | |
| // 	protoc        v3.11.4
 | |
| // source: github.com/micro/go-micro/store/service/proto/store.proto
 | |
| 
 | |
| package go_micro_store
 | |
| 
 | |
| import (
 | |
| 	proto "github.com/golang/protobuf/proto"
 | |
| 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 | |
| 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 | |
| 	reflect "reflect"
 | |
| 	sync "sync"
 | |
| )
 | |
| 
 | |
| const (
 | |
| 	// Verify that this generated code is sufficiently up-to-date.
 | |
| 	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
 | |
| 	// Verify that runtime/protoimpl is sufficiently up-to-date.
 | |
| 	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
 | |
| )
 | |
| 
 | |
| // This is a compile-time assertion that a sufficiently up-to-date version
 | |
| // of the legacy proto package is being used.
 | |
| const _ = proto.ProtoPackageIsVersion4
 | |
| 
 | |
| type Field struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	// type of value e.g string, int, int64, bool, float64
 | |
| 	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
 | |
| 	// the actual value
 | |
| 	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *Field) Reset() {
 | |
| 	*x = Field{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[0]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *Field) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*Field) ProtoMessage() {}
 | |
| 
 | |
| func (x *Field) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[0]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use Field.ProtoReflect.Descriptor instead.
 | |
| func (*Field) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{0}
 | |
| }
 | |
| 
 | |
| func (x *Field) GetType() string {
 | |
| 	if x != nil {
 | |
| 		return x.Type
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *Field) GetValue() string {
 | |
| 	if x != nil {
 | |
| 		return x.Value
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| type Record struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	// key of the record
 | |
| 	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
 | |
| 	// value in the record
 | |
| 	Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
 | |
| 	// time.Duration (signed int64 nanoseconds)
 | |
| 	Expiry int64 `protobuf:"varint,3,opt,name=expiry,proto3" json:"expiry,omitempty"`
 | |
| 	// the associated metadata
 | |
| 	Metadata map[string]*Field `protobuf:"bytes,4,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
 | |
| }
 | |
| 
 | |
| func (x *Record) Reset() {
 | |
| 	*x = Record{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[1]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *Record) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*Record) ProtoMessage() {}
 | |
| 
 | |
| func (x *Record) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[1]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use Record.ProtoReflect.Descriptor instead.
 | |
| func (*Record) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{1}
 | |
| }
 | |
| 
 | |
| func (x *Record) GetKey() string {
 | |
| 	if x != nil {
 | |
| 		return x.Key
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *Record) GetValue() []byte {
 | |
| 	if x != nil {
 | |
| 		return x.Value
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| func (x *Record) GetExpiry() int64 {
 | |
| 	if x != nil {
 | |
| 		return x.Expiry
 | |
| 	}
 | |
| 	return 0
 | |
| }
 | |
| 
 | |
| func (x *Record) GetMetadata() map[string]*Field {
 | |
| 	if x != nil {
 | |
| 		return x.Metadata
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| type ReadOptions struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
 | |
| 	Table    string `protobuf:"bytes,2,opt,name=table,proto3" json:"table,omitempty"`
 | |
| 	Prefix   bool   `protobuf:"varint,3,opt,name=prefix,proto3" json:"prefix,omitempty"`
 | |
| 	Suffix   bool   `protobuf:"varint,4,opt,name=suffix,proto3" json:"suffix,omitempty"`
 | |
| 	Limit    uint64 `protobuf:"varint,5,opt,name=limit,proto3" json:"limit,omitempty"`
 | |
| 	Offset   uint64 `protobuf:"varint,6,opt,name=offset,proto3" json:"offset,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *ReadOptions) Reset() {
 | |
| 	*x = ReadOptions{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[2]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *ReadOptions) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*ReadOptions) ProtoMessage() {}
 | |
| 
 | |
| func (x *ReadOptions) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[2]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use ReadOptions.ProtoReflect.Descriptor instead.
 | |
| func (*ReadOptions) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{2}
 | |
| }
 | |
| 
 | |
| func (x *ReadOptions) GetDatabase() string {
 | |
| 	if x != nil {
 | |
| 		return x.Database
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *ReadOptions) GetTable() string {
 | |
| 	if x != nil {
 | |
| 		return x.Table
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *ReadOptions) GetPrefix() bool {
 | |
| 	if x != nil {
 | |
| 		return x.Prefix
 | |
| 	}
 | |
| 	return false
 | |
| }
 | |
| 
 | |
| func (x *ReadOptions) GetSuffix() bool {
 | |
| 	if x != nil {
 | |
| 		return x.Suffix
 | |
| 	}
 | |
| 	return false
 | |
| }
 | |
| 
 | |
| func (x *ReadOptions) GetLimit() uint64 {
 | |
| 	if x != nil {
 | |
| 		return x.Limit
 | |
| 	}
 | |
| 	return 0
 | |
| }
 | |
| 
 | |
| func (x *ReadOptions) GetOffset() uint64 {
 | |
| 	if x != nil {
 | |
| 		return x.Offset
 | |
| 	}
 | |
| 	return 0
 | |
| }
 | |
| 
 | |
| type ReadRequest struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Key     string       `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
 | |
| 	Options *ReadOptions `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *ReadRequest) Reset() {
 | |
| 	*x = ReadRequest{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[3]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *ReadRequest) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*ReadRequest) ProtoMessage() {}
 | |
| 
 | |
| func (x *ReadRequest) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[3]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use ReadRequest.ProtoReflect.Descriptor instead.
 | |
| func (*ReadRequest) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{3}
 | |
| }
 | |
| 
 | |
| func (x *ReadRequest) GetKey() string {
 | |
| 	if x != nil {
 | |
| 		return x.Key
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *ReadRequest) GetOptions() *ReadOptions {
 | |
| 	if x != nil {
 | |
| 		return x.Options
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| type ReadResponse struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Records []*Record `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *ReadResponse) Reset() {
 | |
| 	*x = ReadResponse{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[4]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *ReadResponse) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*ReadResponse) ProtoMessage() {}
 | |
| 
 | |
| func (x *ReadResponse) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[4]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use ReadResponse.ProtoReflect.Descriptor instead.
 | |
| func (*ReadResponse) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{4}
 | |
| }
 | |
| 
 | |
| func (x *ReadResponse) GetRecords() []*Record {
 | |
| 	if x != nil {
 | |
| 		return x.Records
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| type WriteOptions struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
 | |
| 	Table    string `protobuf:"bytes,2,opt,name=table,proto3" json:"table,omitempty"`
 | |
| 	// time.Time
 | |
| 	Expiry int64 `protobuf:"varint,3,opt,name=expiry,proto3" json:"expiry,omitempty"`
 | |
| 	// time.Duration
 | |
| 	Ttl int64 `protobuf:"varint,4,opt,name=ttl,proto3" json:"ttl,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *WriteOptions) Reset() {
 | |
| 	*x = WriteOptions{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[5]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *WriteOptions) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*WriteOptions) ProtoMessage() {}
 | |
| 
 | |
| func (x *WriteOptions) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[5]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use WriteOptions.ProtoReflect.Descriptor instead.
 | |
| func (*WriteOptions) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{5}
 | |
| }
 | |
| 
 | |
| func (x *WriteOptions) GetDatabase() string {
 | |
| 	if x != nil {
 | |
| 		return x.Database
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *WriteOptions) GetTable() string {
 | |
| 	if x != nil {
 | |
| 		return x.Table
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *WriteOptions) GetExpiry() int64 {
 | |
| 	if x != nil {
 | |
| 		return x.Expiry
 | |
| 	}
 | |
| 	return 0
 | |
| }
 | |
| 
 | |
| func (x *WriteOptions) GetTtl() int64 {
 | |
| 	if x != nil {
 | |
| 		return x.Ttl
 | |
| 	}
 | |
| 	return 0
 | |
| }
 | |
| 
 | |
| type WriteRequest struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Record  *Record       `protobuf:"bytes,1,opt,name=record,proto3" json:"record,omitempty"`
 | |
| 	Options *WriteOptions `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *WriteRequest) Reset() {
 | |
| 	*x = WriteRequest{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[6]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *WriteRequest) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*WriteRequest) ProtoMessage() {}
 | |
| 
 | |
| func (x *WriteRequest) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[6]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use WriteRequest.ProtoReflect.Descriptor instead.
 | |
| func (*WriteRequest) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{6}
 | |
| }
 | |
| 
 | |
| func (x *WriteRequest) GetRecord() *Record {
 | |
| 	if x != nil {
 | |
| 		return x.Record
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| func (x *WriteRequest) GetOptions() *WriteOptions {
 | |
| 	if x != nil {
 | |
| 		return x.Options
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| type WriteResponse struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| }
 | |
| 
 | |
| func (x *WriteResponse) Reset() {
 | |
| 	*x = WriteResponse{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[7]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *WriteResponse) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*WriteResponse) ProtoMessage() {}
 | |
| 
 | |
| func (x *WriteResponse) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[7]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use WriteResponse.ProtoReflect.Descriptor instead.
 | |
| func (*WriteResponse) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{7}
 | |
| }
 | |
| 
 | |
| type DeleteOptions struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
 | |
| 	Table    string `protobuf:"bytes,2,opt,name=table,proto3" json:"table,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *DeleteOptions) Reset() {
 | |
| 	*x = DeleteOptions{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[8]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *DeleteOptions) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*DeleteOptions) ProtoMessage() {}
 | |
| 
 | |
| func (x *DeleteOptions) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[8]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use DeleteOptions.ProtoReflect.Descriptor instead.
 | |
| func (*DeleteOptions) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{8}
 | |
| }
 | |
| 
 | |
| func (x *DeleteOptions) GetDatabase() string {
 | |
| 	if x != nil {
 | |
| 		return x.Database
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *DeleteOptions) GetTable() string {
 | |
| 	if x != nil {
 | |
| 		return x.Table
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| type DeleteRequest struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Key     string         `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
 | |
| 	Options *DeleteOptions `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *DeleteRequest) Reset() {
 | |
| 	*x = DeleteRequest{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[9]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *DeleteRequest) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*DeleteRequest) ProtoMessage() {}
 | |
| 
 | |
| func (x *DeleteRequest) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[9]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use DeleteRequest.ProtoReflect.Descriptor instead.
 | |
| func (*DeleteRequest) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{9}
 | |
| }
 | |
| 
 | |
| func (x *DeleteRequest) GetKey() string {
 | |
| 	if x != nil {
 | |
| 		return x.Key
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *DeleteRequest) GetOptions() *DeleteOptions {
 | |
| 	if x != nil {
 | |
| 		return x.Options
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| type DeleteResponse struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| }
 | |
| 
 | |
| func (x *DeleteResponse) Reset() {
 | |
| 	*x = DeleteResponse{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[10]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *DeleteResponse) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*DeleteResponse) ProtoMessage() {}
 | |
| 
 | |
| func (x *DeleteResponse) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[10]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use DeleteResponse.ProtoReflect.Descriptor instead.
 | |
| func (*DeleteResponse) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{10}
 | |
| }
 | |
| 
 | |
| type ListOptions struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
 | |
| 	Table    string `protobuf:"bytes,2,opt,name=table,proto3" json:"table,omitempty"`
 | |
| 	Prefix   string `protobuf:"bytes,3,opt,name=prefix,proto3" json:"prefix,omitempty"`
 | |
| 	Suffix   string `protobuf:"bytes,4,opt,name=suffix,proto3" json:"suffix,omitempty"`
 | |
| 	Limit    uint64 `protobuf:"varint,5,opt,name=limit,proto3" json:"limit,omitempty"`
 | |
| 	Offset   uint64 `protobuf:"varint,6,opt,name=offset,proto3" json:"offset,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *ListOptions) Reset() {
 | |
| 	*x = ListOptions{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[11]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *ListOptions) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*ListOptions) ProtoMessage() {}
 | |
| 
 | |
| func (x *ListOptions) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[11]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use ListOptions.ProtoReflect.Descriptor instead.
 | |
| func (*ListOptions) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{11}
 | |
| }
 | |
| 
 | |
| func (x *ListOptions) GetDatabase() string {
 | |
| 	if x != nil {
 | |
| 		return x.Database
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *ListOptions) GetTable() string {
 | |
| 	if x != nil {
 | |
| 		return x.Table
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *ListOptions) GetPrefix() string {
 | |
| 	if x != nil {
 | |
| 		return x.Prefix
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *ListOptions) GetSuffix() string {
 | |
| 	if x != nil {
 | |
| 		return x.Suffix
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| func (x *ListOptions) GetLimit() uint64 {
 | |
| 	if x != nil {
 | |
| 		return x.Limit
 | |
| 	}
 | |
| 	return 0
 | |
| }
 | |
| 
 | |
| func (x *ListOptions) GetOffset() uint64 {
 | |
| 	if x != nil {
 | |
| 		return x.Offset
 | |
| 	}
 | |
| 	return 0
 | |
| }
 | |
| 
 | |
| type ListRequest struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Options *ListOptions `protobuf:"bytes,1,opt,name=options,proto3" json:"options,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *ListRequest) Reset() {
 | |
| 	*x = ListRequest{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[12]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *ListRequest) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*ListRequest) ProtoMessage() {}
 | |
| 
 | |
| func (x *ListRequest) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[12]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use ListRequest.ProtoReflect.Descriptor instead.
 | |
| func (*ListRequest) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{12}
 | |
| }
 | |
| 
 | |
| func (x *ListRequest) GetOptions() *ListOptions {
 | |
| 	if x != nil {
 | |
| 		return x.Options
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| type ListResponse struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Keys []string `protobuf:"bytes,2,rep,name=keys,proto3" json:"keys,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *ListResponse) Reset() {
 | |
| 	*x = ListResponse{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[13]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *ListResponse) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*ListResponse) ProtoMessage() {}
 | |
| 
 | |
| func (x *ListResponse) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[13]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use ListResponse.ProtoReflect.Descriptor instead.
 | |
| func (*ListResponse) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{13}
 | |
| }
 | |
| 
 | |
| func (x *ListResponse) GetKeys() []string {
 | |
| 	if x != nil {
 | |
| 		return x.Keys
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| type DatabasesRequest struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| }
 | |
| 
 | |
| func (x *DatabasesRequest) Reset() {
 | |
| 	*x = DatabasesRequest{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[14]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *DatabasesRequest) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*DatabasesRequest) ProtoMessage() {}
 | |
| 
 | |
| func (x *DatabasesRequest) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[14]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use DatabasesRequest.ProtoReflect.Descriptor instead.
 | |
| func (*DatabasesRequest) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{14}
 | |
| }
 | |
| 
 | |
| type DatabasesResponse struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Databases []string `protobuf:"bytes,1,rep,name=databases,proto3" json:"databases,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *DatabasesResponse) Reset() {
 | |
| 	*x = DatabasesResponse{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[15]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *DatabasesResponse) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*DatabasesResponse) ProtoMessage() {}
 | |
| 
 | |
| func (x *DatabasesResponse) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[15]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use DatabasesResponse.ProtoReflect.Descriptor instead.
 | |
| func (*DatabasesResponse) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{15}
 | |
| }
 | |
| 
 | |
| func (x *DatabasesResponse) GetDatabases() []string {
 | |
| 	if x != nil {
 | |
| 		return x.Databases
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| type TablesRequest struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *TablesRequest) Reset() {
 | |
| 	*x = TablesRequest{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[16]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *TablesRequest) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*TablesRequest) ProtoMessage() {}
 | |
| 
 | |
| func (x *TablesRequest) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[16]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use TablesRequest.ProtoReflect.Descriptor instead.
 | |
| func (*TablesRequest) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{16}
 | |
| }
 | |
| 
 | |
| func (x *TablesRequest) GetDatabase() string {
 | |
| 	if x != nil {
 | |
| 		return x.Database
 | |
| 	}
 | |
| 	return ""
 | |
| }
 | |
| 
 | |
| type TablesResponse struct {
 | |
| 	state         protoimpl.MessageState
 | |
| 	sizeCache     protoimpl.SizeCache
 | |
| 	unknownFields protoimpl.UnknownFields
 | |
| 
 | |
| 	Tables []string `protobuf:"bytes,1,rep,name=tables,proto3" json:"tables,omitempty"`
 | |
| }
 | |
| 
 | |
| func (x *TablesResponse) Reset() {
 | |
| 	*x = TablesResponse{}
 | |
| 	if protoimpl.UnsafeEnabled {
 | |
| 		mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[17]
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		ms.StoreMessageInfo(mi)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (x *TablesResponse) String() string {
 | |
| 	return protoimpl.X.MessageStringOf(x)
 | |
| }
 | |
| 
 | |
| func (*TablesResponse) ProtoMessage() {}
 | |
| 
 | |
| func (x *TablesResponse) ProtoReflect() protoreflect.Message {
 | |
| 	mi := &file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[17]
 | |
| 	if protoimpl.UnsafeEnabled && x != nil {
 | |
| 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | |
| 		if ms.LoadMessageInfo() == nil {
 | |
| 			ms.StoreMessageInfo(mi)
 | |
| 		}
 | |
| 		return ms
 | |
| 	}
 | |
| 	return mi.MessageOf(x)
 | |
| }
 | |
| 
 | |
| // Deprecated: Use TablesResponse.ProtoReflect.Descriptor instead.
 | |
| func (*TablesResponse) Descriptor() ([]byte, []int) {
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP(), []int{17}
 | |
| }
 | |
| 
 | |
| func (x *TablesResponse) GetTables() []string {
 | |
| 	if x != nil {
 | |
| 		return x.Tables
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| var File_github_com_micro_go_micro_store_service_proto_store_proto protoreflect.FileDescriptor
 | |
| 
 | |
| var file_github_com_micro_go_micro_store_service_proto_store_proto_rawDesc = []byte{
 | |
| 	0x0a, 0x39, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x69, 0x63,
 | |
| 	0x72, 0x6f, 0x2f, 0x67, 0x6f, 0x2d, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2f, 0x73, 0x74, 0x6f, 0x72,
 | |
| 	0x65, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
 | |
| 	0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0e, 0x67, 0x6f, 0x2e,
 | |
| 	0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x22, 0x31, 0x0a, 0x05, 0x46,
 | |
| 	0x69, 0x65, 0x6c, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
 | |
| 	0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
 | |
| 	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xde,
 | |
| 	0x01, 0x0a, 0x06, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
 | |
| 	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76,
 | |
| 	0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
 | |
| 	0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28,
 | |
| 	0x03, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x40, 0x0a, 0x08, 0x6d, 0x65, 0x74,
 | |
| 	0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f,
 | |
| 	0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x63,
 | |
| 	0x6f, 0x72, 0x64, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72,
 | |
| 	0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x52, 0x0a, 0x0d, 0x4d,
 | |
| 	0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
 | |
| 	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2b,
 | |
| 	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e,
 | |
| 	0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x46,
 | |
| 	0x69, 0x65, 0x6c, 0x64, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
 | |
| 	0x9d, 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
 | |
| 	0x1a, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
 | |
| 	0x09, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74,
 | |
| 	0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c,
 | |
| 	0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28,
 | |
| 	0x08, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x66,
 | |
| 	0x66, 0x69, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x75, 0x66, 0x66, 0x69,
 | |
| 	0x78, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04,
 | |
| 	0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65,
 | |
| 	0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22,
 | |
| 	0x56, 0x0a, 0x0b, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10,
 | |
| 	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
 | |
| 	0x12, 0x35, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
 | |
| 	0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73, 0x74, 0x6f,
 | |
| 	0x72, 0x65, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07,
 | |
| 	0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x40, 0x0a, 0x0c, 0x52, 0x65, 0x61, 0x64, 0x52,
 | |
| 	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72,
 | |
| 	0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69,
 | |
| 	0x63, 0x72, 0x6f, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
 | |
| 	0x52, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x22, 0x6a, 0x0a, 0x0c, 0x57, 0x72, 0x69,
 | |
| 	0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, 0x74,
 | |
| 	0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x61, 0x74,
 | |
| 	0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02,
 | |
| 	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x65,
 | |
| 	0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x65, 0x78, 0x70,
 | |
| 	0x69, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03,
 | |
| 	0x52, 0x03, 0x74, 0x74, 0x6c, 0x22, 0x76, 0x0a, 0x0c, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65,
 | |
| 	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18,
 | |
| 	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f,
 | |
| 	0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72,
 | |
| 	0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x36, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
 | |
| 	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72,
 | |
| 	0x6f, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x70, 0x74,
 | |
| 	0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x0f, 0x0a,
 | |
| 	0x0d, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x41,
 | |
| 	0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
 | |
| 	0x1a, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
 | |
| 	0x09, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74,
 | |
| 	0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c,
 | |
| 	0x65, 0x22, 0x5a, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
 | |
| 	0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
 | |
| 	0x03, 0x6b, 0x65, 0x79, 0x12, 0x37, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
 | |
| 	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f,
 | |
| 	0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x70, 0x74,
 | |
| 	0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x10, 0x0a,
 | |
| 	0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
 | |
| 	0x9d, 0x01, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
 | |
| 	0x1a, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
 | |
| 	0x09, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74,
 | |
| 	0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c,
 | |
| 	0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28,
 | |
| 	0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x66,
 | |
| 	0x66, 0x69, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x66, 0x66, 0x69,
 | |
| 	0x78, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04,
 | |
| 	0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65,
 | |
| 	0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22,
 | |
| 	0x44, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x35,
 | |
| 	0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
 | |
| 	0x1b, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65,
 | |
| 	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70,
 | |
| 	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x28, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73,
 | |
| 	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x02, 0x20,
 | |
| 	0x03, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x22,
 | |
| 	0x12, 0x0a, 0x10, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75,
 | |
| 	0x65, 0x73, 0x74, 0x22, 0x31, 0x0a, 0x11, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73,
 | |
| 	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61,
 | |
| 	0x62, 0x61, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x64, 0x61, 0x74,
 | |
| 	0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x22, 0x2b, 0x0a, 0x0d, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73,
 | |
| 	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62,
 | |
| 	0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62,
 | |
| 	0x61, 0x73, 0x65, 0x22, 0x28, 0x0a, 0x0e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73,
 | |
| 	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18,
 | |
| 	0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x32, 0xc5, 0x03,
 | |
| 	0x0a, 0x05, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x43, 0x0a, 0x04, 0x52, 0x65, 0x61, 0x64, 0x12,
 | |
| 	0x1b, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65,
 | |
| 	0x2e, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x67,
 | |
| 	0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x65,
 | |
| 	0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x46, 0x0a, 0x05,
 | |
| 	0x57, 0x72, 0x69, 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f,
 | |
| 	0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75,
 | |
| 	0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73,
 | |
| 	0x74, 0x6f, 0x72, 0x65, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
 | |
| 	0x73, 0x65, 0x22, 0x00, 0x12, 0x49, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x1d,
 | |
| 	0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e,
 | |
| 	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e,
 | |
| 	0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x44,
 | |
| 	0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
 | |
| 	0x45, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1b, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63,
 | |
| 	0x72, 0x6f, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71,
 | |
| 	0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e,
 | |
| 	0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
 | |
| 	0x73, 0x65, 0x22, 0x00, 0x30, 0x01, 0x12, 0x52, 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61,
 | |
| 	0x73, 0x65, 0x73, 0x12, 0x20, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73,
 | |
| 	0x74, 0x6f, 0x72, 0x65, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65,
 | |
| 	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f,
 | |
| 	0x2e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73,
 | |
| 	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x49, 0x0a, 0x06, 0x54, 0x61,
 | |
| 	0x62, 0x6c, 0x65, 0x73, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e,
 | |
| 	0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75,
 | |
| 	0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x6f, 0x2e, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x2e, 0x73,
 | |
| 	0x74, 0x6f, 0x72, 0x65, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
 | |
| 	0x6e, 0x73, 0x65, 0x22, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 | |
| }
 | |
| 
 | |
| var (
 | |
| 	file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescOnce sync.Once
 | |
| 	file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescData = file_github_com_micro_go_micro_store_service_proto_store_proto_rawDesc
 | |
| )
 | |
| 
 | |
| func file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescGZIP() []byte {
 | |
| 	file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescOnce.Do(func() {
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescData)
 | |
| 	})
 | |
| 	return file_github_com_micro_go_micro_store_service_proto_store_proto_rawDescData
 | |
| }
 | |
| 
 | |
| var file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes = make([]protoimpl.MessageInfo, 19)
 | |
| var file_github_com_micro_go_micro_store_service_proto_store_proto_goTypes = []interface{}{
 | |
| 	(*Field)(nil),             // 0: go.micro.store.Field
 | |
| 	(*Record)(nil),            // 1: go.micro.store.Record
 | |
| 	(*ReadOptions)(nil),       // 2: go.micro.store.ReadOptions
 | |
| 	(*ReadRequest)(nil),       // 3: go.micro.store.ReadRequest
 | |
| 	(*ReadResponse)(nil),      // 4: go.micro.store.ReadResponse
 | |
| 	(*WriteOptions)(nil),      // 5: go.micro.store.WriteOptions
 | |
| 	(*WriteRequest)(nil),      // 6: go.micro.store.WriteRequest
 | |
| 	(*WriteResponse)(nil),     // 7: go.micro.store.WriteResponse
 | |
| 	(*DeleteOptions)(nil),     // 8: go.micro.store.DeleteOptions
 | |
| 	(*DeleteRequest)(nil),     // 9: go.micro.store.DeleteRequest
 | |
| 	(*DeleteResponse)(nil),    // 10: go.micro.store.DeleteResponse
 | |
| 	(*ListOptions)(nil),       // 11: go.micro.store.ListOptions
 | |
| 	(*ListRequest)(nil),       // 12: go.micro.store.ListRequest
 | |
| 	(*ListResponse)(nil),      // 13: go.micro.store.ListResponse
 | |
| 	(*DatabasesRequest)(nil),  // 14: go.micro.store.DatabasesRequest
 | |
| 	(*DatabasesResponse)(nil), // 15: go.micro.store.DatabasesResponse
 | |
| 	(*TablesRequest)(nil),     // 16: go.micro.store.TablesRequest
 | |
| 	(*TablesResponse)(nil),    // 17: go.micro.store.TablesResponse
 | |
| 	nil,                       // 18: go.micro.store.Record.MetadataEntry
 | |
| }
 | |
| var file_github_com_micro_go_micro_store_service_proto_store_proto_depIdxs = []int32{
 | |
| 	18, // 0: go.micro.store.Record.metadata:type_name -> go.micro.store.Record.MetadataEntry
 | |
| 	2,  // 1: go.micro.store.ReadRequest.options:type_name -> go.micro.store.ReadOptions
 | |
| 	1,  // 2: go.micro.store.ReadResponse.records:type_name -> go.micro.store.Record
 | |
| 	1,  // 3: go.micro.store.WriteRequest.record:type_name -> go.micro.store.Record
 | |
| 	5,  // 4: go.micro.store.WriteRequest.options:type_name -> go.micro.store.WriteOptions
 | |
| 	8,  // 5: go.micro.store.DeleteRequest.options:type_name -> go.micro.store.DeleteOptions
 | |
| 	11, // 6: go.micro.store.ListRequest.options:type_name -> go.micro.store.ListOptions
 | |
| 	0,  // 7: go.micro.store.Record.MetadataEntry.value:type_name -> go.micro.store.Field
 | |
| 	3,  // 8: go.micro.store.Store.Read:input_type -> go.micro.store.ReadRequest
 | |
| 	6,  // 9: go.micro.store.Store.Write:input_type -> go.micro.store.WriteRequest
 | |
| 	9,  // 10: go.micro.store.Store.Delete:input_type -> go.micro.store.DeleteRequest
 | |
| 	12, // 11: go.micro.store.Store.List:input_type -> go.micro.store.ListRequest
 | |
| 	14, // 12: go.micro.store.Store.Databases:input_type -> go.micro.store.DatabasesRequest
 | |
| 	16, // 13: go.micro.store.Store.Tables:input_type -> go.micro.store.TablesRequest
 | |
| 	4,  // 14: go.micro.store.Store.Read:output_type -> go.micro.store.ReadResponse
 | |
| 	7,  // 15: go.micro.store.Store.Write:output_type -> go.micro.store.WriteResponse
 | |
| 	10, // 16: go.micro.store.Store.Delete:output_type -> go.micro.store.DeleteResponse
 | |
| 	13, // 17: go.micro.store.Store.List:output_type -> go.micro.store.ListResponse
 | |
| 	15, // 18: go.micro.store.Store.Databases:output_type -> go.micro.store.DatabasesResponse
 | |
| 	17, // 19: go.micro.store.Store.Tables:output_type -> go.micro.store.TablesResponse
 | |
| 	14, // [14:20] is the sub-list for method output_type
 | |
| 	8,  // [8:14] is the sub-list for method input_type
 | |
| 	8,  // [8:8] is the sub-list for extension type_name
 | |
| 	8,  // [8:8] is the sub-list for extension extendee
 | |
| 	0,  // [0:8] is the sub-list for field type_name
 | |
| }
 | |
| 
 | |
| func init() { file_github_com_micro_go_micro_store_service_proto_store_proto_init() }
 | |
| func file_github_com_micro_go_micro_store_service_proto_store_proto_init() {
 | |
| 	if File_github_com_micro_go_micro_store_service_proto_store_proto != nil {
 | |
| 		return
 | |
| 	}
 | |
| 	if !protoimpl.UnsafeEnabled {
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*Field); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*Record); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*ReadOptions); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*ReadRequest); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*ReadResponse); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*WriteOptions); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*WriteRequest); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*WriteResponse); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*DeleteOptions); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*DeleteRequest); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*DeleteResponse); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*ListOptions); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*ListRequest); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*ListResponse); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*DatabasesRequest); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*DatabasesResponse); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*TablesRequest); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 		file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
 | |
| 			switch v := v.(*TablesResponse); i {
 | |
| 			case 0:
 | |
| 				return &v.state
 | |
| 			case 1:
 | |
| 				return &v.sizeCache
 | |
| 			case 2:
 | |
| 				return &v.unknownFields
 | |
| 			default:
 | |
| 				return nil
 | |
| 			}
 | |
| 		}
 | |
| 	}
 | |
| 	type x struct{}
 | |
| 	out := protoimpl.TypeBuilder{
 | |
| 		File: protoimpl.DescBuilder{
 | |
| 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 | |
| 			RawDescriptor: file_github_com_micro_go_micro_store_service_proto_store_proto_rawDesc,
 | |
| 			NumEnums:      0,
 | |
| 			NumMessages:   19,
 | |
| 			NumExtensions: 0,
 | |
| 			NumServices:   1,
 | |
| 		},
 | |
| 		GoTypes:           file_github_com_micro_go_micro_store_service_proto_store_proto_goTypes,
 | |
| 		DependencyIndexes: file_github_com_micro_go_micro_store_service_proto_store_proto_depIdxs,
 | |
| 		MessageInfos:      file_github_com_micro_go_micro_store_service_proto_store_proto_msgTypes,
 | |
| 	}.Build()
 | |
| 	File_github_com_micro_go_micro_store_service_proto_store_proto = out.File
 | |
| 	file_github_com_micro_go_micro_store_service_proto_store_proto_rawDesc = nil
 | |
| 	file_github_com_micro_go_micro_store_service_proto_store_proto_goTypes = nil
 | |
| 	file_github_com_micro_go_micro_store_service_proto_store_proto_depIdxs = nil
 | |
| }
 |