summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build/crds/devices/devices_v1beta1_device.yaml32
-rw-r--r--manifests/charts/cloudcore/crds/devices_v1beta1_device.yaml32
-rw-r--r--pkg/apis/devices/v1beta1/device_instance_types.go39
-rw-r--r--pkg/apis/devices/v1beta1/zz_generated.deepcopy.go84
-rw-r--r--pkg/apis/dmi/v1beta1/api.pb.go972
-rw-r--r--pkg/apis/dmi/v1beta1/api.proto30
-rw-r--r--pkg/apis/dmi/v1beta1/api_grpc.pb.go2
-rw-r--r--staging/src/github.com/kubeedge/mapper-framework/_template/mapper/data/dbmethod/redis/client.go110
-rw-r--r--staging/src/github.com/kubeedge/mapper-framework/_template/mapper/data/dbmethod/tdengine/client.go154
-rw-r--r--staging/src/github.com/kubeedge/mapper-framework/_template/mapper/device/device.go90
-rw-r--r--staging/src/github.com/kubeedge/mapper-framework/pkg/common/configmaptype.go3
-rw-r--r--staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api.pb.go972
-rw-r--r--staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api.proto30
-rw-r--r--staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api_grpc.pb.go2
-rw-r--r--staging/src/github.com/kubeedge/mapper-framework/pkg/util/parse/grpc.go22
15 files changed, 1917 insertions, 657 deletions
diff --git a/build/crds/devices/devices_v1beta1_device.yaml b/build/crds/devices/devices_v1beta1_device.yaml
index 313b282de..e360ad949 100644
--- a/build/crds/devices/devices_v1beta1_device.yaml
+++ b/build/crds/devices/devices_v1beta1_device.yaml
@@ -600,6 +600,19 @@ spec:
data to database, please ensure that the mapper can access
the destination address.
properties:
+ TDEngine:
+ properties:
+ TDEngineClientConfig:
+ description: tdengineClientConfig of tdengine database
+ properties:
+ addr:
+ description: addr of tdEngine database
+ type: string
+ dbName:
+ description: dbname of tdEngine database
+ type: string
+ type: object
+ type: object
influxdb2:
description: method configuration for database
properties:
@@ -633,6 +646,25 @@ spec:
type: object
type: object
type: object
+ redis:
+ properties:
+ redisClientConfig:
+ description: RedisClientConfig of redis database
+ properties:
+ addr:
+ description: Addr of Redis database
+ type: string
+ db:
+ description: Db of Redis database
+ type: integer
+ minIdleConns:
+ description: MinIdleConns of Redis database
+ type: integer
+ poolsize:
+ description: Poolsize of Redis database
+ type: integer
+ type: object
+ type: object
type: object
http:
description: HTTP Push method configuration for http
diff --git a/manifests/charts/cloudcore/crds/devices_v1beta1_device.yaml b/manifests/charts/cloudcore/crds/devices_v1beta1_device.yaml
index 313b282de..e360ad949 100644
--- a/manifests/charts/cloudcore/crds/devices_v1beta1_device.yaml
+++ b/manifests/charts/cloudcore/crds/devices_v1beta1_device.yaml
@@ -600,6 +600,19 @@ spec:
data to database, please ensure that the mapper can access
the destination address.
properties:
+ TDEngine:
+ properties:
+ TDEngineClientConfig:
+ description: tdengineClientConfig of tdengine database
+ properties:
+ addr:
+ description: addr of tdEngine database
+ type: string
+ dbName:
+ description: dbname of tdEngine database
+ type: string
+ type: object
+ type: object
influxdb2:
description: method configuration for database
properties:
@@ -633,6 +646,25 @@ spec:
type: object
type: object
type: object
+ redis:
+ properties:
+ redisClientConfig:
+ description: RedisClientConfig of redis database
+ properties:
+ addr:
+ description: Addr of Redis database
+ type: string
+ db:
+ description: Db of Redis database
+ type: integer
+ minIdleConns:
+ description: MinIdleConns of Redis database
+ type: integer
+ poolsize:
+ description: Poolsize of Redis database
+ type: integer
+ type: object
+ type: object
type: object
http:
description: HTTP Push method configuration for http
diff --git a/pkg/apis/devices/v1beta1/device_instance_types.go b/pkg/apis/devices/v1beta1/device_instance_types.go
index 80f923f25..3c4f706bf 100644
--- a/pkg/apis/devices/v1beta1/device_instance_types.go
+++ b/pkg/apis/devices/v1beta1/device_instance_types.go
@@ -156,6 +156,10 @@ type DBMethodConfig struct {
// method configuration for database
// +optional
Influxdb2 *DBMethodInfluxdb2 `json:"influxdb2,omitempty"`
+ // +optional
+ Redis *DBMethodRedis `json:"redis,omitempty"`
+ // +optional
+ TDEngine *DBMethodTDEngine `json:"TDEngine,omitempty"`
}
type DBMethodInfluxdb2 struct {
@@ -191,6 +195,41 @@ type Influxdb2DataConfig struct {
FieldKey string `json:"fieldKey,omitempty"`
}
+type DBMethodRedis struct {
+ // RedisClientConfig of redis database
+ // +optional
+ RedisClientConfig *RedisClientConfig `json:"redisClientConfig,omitempty"`
+}
+
+type RedisClientConfig struct {
+ // Addr of Redis database
+ // +optional
+ Addr string `json:"addr,omitempty"`
+ // Db of Redis database
+ // +optional
+ DB int `json:"db,omitempty"`
+ // Poolsize of Redis database
+ // +optional
+ Poolsize int `json:"poolsize,omitempty"`
+ // MinIdleConns of Redis database
+ // +optional
+ MinIdleConns int `json:"minIdleConns,omitempty"`
+}
+
+type DBMethodTDEngine struct {
+ // tdengineClientConfig of tdengine database
+ // +optional
+ TDEngineClientConfig *TDEngineClientConfig `json:"TDEngineClientConfig,omitempty"`
+}
+type TDEngineClientConfig struct {
+ // addr of tdEngine database
+ // +optional
+ Addr string `json:"addr,omitempty"`
+ // dbname of tdEngine database
+ // +optional
+ DBName string `json:"dbName,omitempty"`
+}
+
type VisitorConfig struct {
// Required: name of customized protocol
ProtocolName string `json:"protocolName,omitempty"`
diff --git a/pkg/apis/devices/v1beta1/zz_generated.deepcopy.go b/pkg/apis/devices/v1beta1/zz_generated.deepcopy.go
index ed6351149..e6d69278f 100644
--- a/pkg/apis/devices/v1beta1/zz_generated.deepcopy.go
+++ b/pkg/apis/devices/v1beta1/zz_generated.deepcopy.go
@@ -34,6 +34,16 @@ func (in *DBMethodConfig) DeepCopyInto(out *DBMethodConfig) {
*out = new(DBMethodInfluxdb2)
(*in).DeepCopyInto(*out)
}
+ if in.Redis != nil {
+ in, out := &in.Redis, &out.Redis
+ *out = new(DBMethodRedis)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TDEngine != nil {
+ in, out := &in.TDEngine, &out.TDEngine
+ *out = new(DBMethodTDEngine)
+ (*in).DeepCopyInto(*out)
+ }
return
}
@@ -74,6 +84,48 @@ func (in *DBMethodInfluxdb2) DeepCopy() *DBMethodInfluxdb2 {
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *DBMethodRedis) DeepCopyInto(out *DBMethodRedis) {
+ *out = *in
+ if in.RedisClientConfig != nil {
+ in, out := &in.RedisClientConfig, &out.RedisClientConfig
+ *out = new(RedisClientConfig)
+ **out = **in
+ }
+ return
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DBMethodRedis.
+func (in *DBMethodRedis) DeepCopy() *DBMethodRedis {
+ if in == nil {
+ return nil
+ }
+ out := new(DBMethodRedis)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *DBMethodTDEngine) DeepCopyInto(out *DBMethodTDEngine) {
+ *out = *in
+ if in.TDEngineClientConfig != nil {
+ in, out := &in.TDEngineClientConfig, &out.TDEngineClientConfig
+ *out = new(TDEngineClientConfig)
+ **out = **in
+ }
+ return
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DBMethodTDEngine.
+func (in *DBMethodTDEngine) DeepCopy() *DBMethodTDEngine {
+ if in == nil {
+ return nil
+ }
+ out := new(DBMethodTDEngine)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Device) DeepCopyInto(out *Device) {
*out = *in
out.TypeMeta = in.TypeMeta
@@ -429,6 +481,38 @@ func (in *PushMethodMQTT) DeepCopy() *PushMethodMQTT {
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *RedisClientConfig) DeepCopyInto(out *RedisClientConfig) {
+ *out = *in
+ return
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisClientConfig.
+func (in *RedisClientConfig) DeepCopy() *RedisClientConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(RedisClientConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *TDEngineClientConfig) DeepCopyInto(out *TDEngineClientConfig) {
+ *out = *in
+ return
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TDEngineClientConfig.
+func (in *TDEngineClientConfig) DeepCopy() *TDEngineClientConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(TDEngineClientConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Twin) DeepCopyInto(out *Twin) {
*out = *in
in.Reported.DeepCopyInto(&out.Reported)
diff --git a/pkg/apis/dmi/v1beta1/api.pb.go b/pkg/apis/dmi/v1beta1/api.pb.go
index 19e252dbd..1a89812c6 100644
--- a/pkg/apis/dmi/v1beta1/api.pb.go
+++ b/pkg/apis/dmi/v1beta1/api.pb.go
@@ -1,5 +1,5 @@
/*
-Copyright 2022 The KubeEdge Authors.
+Copyright 2023 The KubeEdge Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -19,8 +19,8 @@ Copyright 2022 The KubeEdge Authors.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.26.0
-// protoc v3.19.4
+// protoc-gen-go v1.31.0
+// protoc v3.20.3
// source: api.proto
package v1beta1
@@ -1089,6 +1089,8 @@ type DBMethod struct {
// the config of database .
Influxdb2 *DBMethodInfluxdb2 `protobuf:"bytes,1,opt,name=influxdb2,proto3" json:"influxdb2,omitempty"`
+ Redis *DBMethodRedis `protobuf:"bytes,2,opt,name=redis,proto3" json:"redis,omitempty"`
+ Tdengine *DBMethodTDEngine `protobuf:"bytes,3,opt,name=tdengine,proto3" json:"tdengine,omitempty"`
}
func (x *DBMethod) Reset() {
@@ -1130,6 +1132,20 @@ func (x *DBMethod) GetInfluxdb2() *DBMethodInfluxdb2 {
return nil
}
+func (x *DBMethod) GetRedis() *DBMethodRedis {
+ if x != nil {
+ return x.Redis
+ }
+ return nil
+}
+
+func (x *DBMethod) GetTdengine() *DBMethodTDEngine {
+ if x != nil {
+ return x.Tdengine
+ }
+ return nil
+}
+
type DBMethodInfluxdb2 struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -1316,6 +1332,234 @@ func (x *Influxdb2ClientConfig) GetBucket() string {
return ""
}
+type DBMethodRedis struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // data config when push data to redis
+ RedisClientConfig *RedisClientConfig `protobuf:"bytes,1,opt,name=redisClientConfig,proto3" json:"redisClientConfig,omitempty"`
+}
+
+func (x *DBMethodRedis) Reset() {
+ *x = DBMethodRedis{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_api_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DBMethodRedis) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DBMethodRedis) ProtoMessage() {}
+
+func (x *DBMethodRedis) ProtoReflect() protoreflect.Message {
+ mi := &file_api_proto_msgTypes[19]
+ 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 DBMethodRedis.ProtoReflect.Descriptor instead.
+func (*DBMethodRedis) Descriptor() ([]byte, []int) {
+ return file_api_proto_rawDescGZIP(), []int{19}
+}
+
+func (x *DBMethodRedis) GetRedisClientConfig() *RedisClientConfig {
+ if x != nil {
+ return x.RedisClientConfig
+ }
+ return nil
+}
+
+type RedisClientConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // redis address
+ Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
+ // number of redis db
+ Db int32 `protobuf:"varint,2,opt,name=db,proto3" json:"db,omitempty"`
+ // number of redis poolsize
+ Poolsize int32 `protobuf:"varint,3,opt,name=poolsize,proto3" json:"poolsize,omitempty"`
+ // number of redis minidleconns
+ MinIdleConns int32 `protobuf:"varint,4,opt,name=minIdleConns,proto3" json:"minIdleConns,omitempty"`
+}
+
+func (x *RedisClientConfig) Reset() {
+ *x = RedisClientConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_api_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RedisClientConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RedisClientConfig) ProtoMessage() {}
+
+func (x *RedisClientConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_api_proto_msgTypes[20]
+ 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 RedisClientConfig.ProtoReflect.Descriptor instead.
+func (*RedisClientConfig) Descriptor() ([]byte, []int) {
+ return file_api_proto_rawDescGZIP(), []int{20}
+}
+
+func (x *RedisClientConfig) GetAddr() string {
+ if x != nil {
+ return x.Addr
+ }
+ return ""
+}
+
+func (x *RedisClientConfig) GetDb() int32 {
+ if x != nil {
+ return x.Db
+ }
+ return 0
+}
+
+func (x *RedisClientConfig) GetPoolsize() int32 {
+ if x != nil {
+ return x.Poolsize
+ }
+ return 0
+}
+
+func (x *RedisClientConfig) GetMinIdleConns() int32 {
+ if x != nil {
+ return x.MinIdleConns
+ }
+ return 0
+}
+
+type DBMethodTDEngine struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // data config when push data to tdengine
+ TdEngineClientConfig *TDEngineClientConfig `protobuf:"bytes,1,opt,name=tdEngineClientConfig,proto3" json:"tdEngineClientConfig,omitempty"`
+}
+
+func (x *DBMethodTDEngine) Reset() {
+ *x = DBMethodTDEngine{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_api_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DBMethodTDEngine) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DBMethodTDEngine) ProtoMessage() {}
+
+func (x *DBMethodTDEngine) ProtoReflect() protoreflect.Message {
+ mi := &file_api_proto_msgTypes[21]
+ 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 DBMethodTDEngine.ProtoReflect.Descriptor instead.
+func (*DBMethodTDEngine) Descriptor() ([]byte, []int) {
+ return file_api_proto_rawDescGZIP(), []int{21}
+}
+
+func (x *DBMethodTDEngine) GetTdEngineClientConfig() *TDEngineClientConfig {
+ if x != nil {
+ return x.TdEngineClientConfig
+ }
+ return nil
+}
+
+type TDEngineClientConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // tdengine address,like 127.0.0.1:6041
+ Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
+ // tdengine database name
+ Dbname string `protobuf:"bytes,2,opt,name=dbname,proto3" json:"dbname,omitempty"`
+}
+
+func (x *TDEngineClientConfig) Reset() {
+ *x = TDEngineClientConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_api_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TDEngineClientConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TDEngineClientConfig) ProtoMessage() {}
+
+func (x *TDEngineClientConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_api_proto_msgTypes[22]
+ 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 TDEngineClientConfig.ProtoReflect.Descriptor instead.
+func (*TDEngineClientConfig) Descriptor() ([]byte, []int) {
+ return file_api_proto_rawDescGZIP(), []int{22}
+}
+
+func (x *TDEngineClientConfig) GetAddr() string {
+ if x != nil {
+ return x.Addr
+ }
+ return ""
+}
+
+func (x *TDEngineClientConfig) GetDbname() string {
+ if x != nil {
+ return x.Dbname
+ }
+ return ""
+}
+
// MapperInfo is the information of mapper.
type MapperInfo struct {
state protoimpl.MessageState
@@ -1339,7 +1583,7 @@ type MapperInfo struct {
func (x *MapperInfo) Reset() {
*x = MapperInfo{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[19]
+ mi := &file_api_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1352,7 +1596,7 @@ func (x *MapperInfo) String() string {
func (*MapperInfo) ProtoMessage() {}
func (x *MapperInfo) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[19]
+ mi := &file_api_proto_msgTypes[23]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1365,7 +1609,7 @@ func (x *MapperInfo) ProtoReflect() protoreflect.Message {
// Deprecated: Use MapperInfo.ProtoReflect.Descriptor instead.
func (*MapperInfo) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{19}
+ return file_api_proto_rawDescGZIP(), []int{23}
}
func (x *MapperInfo) GetName() string {
@@ -1422,7 +1666,7 @@ type ReportDeviceStatusRequest struct {
func (x *ReportDeviceStatusRequest) Reset() {
*x = ReportDeviceStatusRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[20]
+ mi := &file_api_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1435,7 +1679,7 @@ func (x *ReportDeviceStatusRequest) String() string {
func (*ReportDeviceStatusRequest) ProtoMessage() {}
func (x *ReportDeviceStatusRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[20]
+ mi := &file_api_proto_msgTypes[24]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1448,7 +1692,7 @@ func (x *ReportDeviceStatusRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ReportDeviceStatusRequest.ProtoReflect.Descriptor instead.
func (*ReportDeviceStatusRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{20}
+ return file_api_proto_rawDescGZIP(), []int{24}
}
func (x *ReportDeviceStatusRequest) GetDeviceName() string {
@@ -1478,7 +1722,7 @@ type DeviceStatus struct {
func (x *DeviceStatus) Reset() {
*x = DeviceStatus{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[21]
+ mi := &file_api_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1491,7 +1735,7 @@ func (x *DeviceStatus) String() string {
func (*DeviceStatus) ProtoMessage() {}
func (x *DeviceStatus) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[21]
+ mi := &file_api_proto_msgTypes[25]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1504,7 +1748,7 @@ func (x *DeviceStatus) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeviceStatus.ProtoReflect.Descriptor instead.
func (*DeviceStatus) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{21}
+ return file_api_proto_rawDescGZIP(), []int{25}
}
func (x *DeviceStatus) GetTwins() []*Twin {
@@ -1531,7 +1775,7 @@ type Twin struct {
func (x *Twin) Reset() {
*x = Twin{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[22]
+ mi := &file_api_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1544,7 +1788,7 @@ func (x *Twin) String() string {
func (*Twin) ProtoMessage() {}
func (x *Twin) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[22]
+ mi := &file_api_proto_msgTypes[26]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1557,7 +1801,7 @@ func (x *Twin) ProtoReflect() protoreflect.Message {
// Deprecated: Use Twin.ProtoReflect.Descriptor instead.
func (*Twin) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{22}
+ return file_api_proto_rawDescGZIP(), []int{26}
}
func (x *Twin) GetPropertyName() string {
@@ -1596,7 +1840,7 @@ type TwinProperty struct {
func (x *TwinProperty) Reset() {
*x = TwinProperty{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[23]
+ mi := &file_api_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1609,7 +1853,7 @@ func (x *TwinProperty) String() string {
func (*TwinProperty) ProtoMessage() {}
func (x *TwinProperty) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[23]
+ mi := &file_api_proto_msgTypes[27]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1622,7 +1866,7 @@ func (x *TwinProperty) ProtoReflect() protoreflect.Message {
// Deprecated: Use TwinProperty.ProtoReflect.Descriptor instead.
func (*TwinProperty) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{23}
+ return file_api_proto_rawDescGZIP(), []int{27}
}
func (x *TwinProperty) GetValue() string {
@@ -1648,7 +1892,7 @@ type ReportDeviceStatusResponse struct {
func (x *ReportDeviceStatusResponse) Reset() {
*x = ReportDeviceStatusResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[24]
+ mi := &file_api_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1661,7 +1905,7 @@ func (x *ReportDeviceStatusResponse) String() string {
func (*ReportDeviceStatusResponse) ProtoMessage() {}
func (x *ReportDeviceStatusResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[24]
+ mi := &file_api_proto_msgTypes[28]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1674,7 +1918,7 @@ func (x *ReportDeviceStatusResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use ReportDeviceStatusResponse.ProtoReflect.Descriptor instead.
func (*ReportDeviceStatusResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{24}
+ return file_api_proto_rawDescGZIP(), []int{28}
}
type RegisterDeviceRequest struct {
@@ -1688,7 +1932,7 @@ type RegisterDeviceRequest struct {
func (x *RegisterDeviceRequest) Reset() {
*x = RegisterDeviceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[25]
+ mi := &file_api_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1701,7 +1945,7 @@ func (x *RegisterDeviceRequest) String() string {
func (*RegisterDeviceRequest) ProtoMessage() {}
func (x *RegisterDeviceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[25]
+ mi := &file_api_proto_msgTypes[29]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1714,7 +1958,7 @@ func (x *RegisterDeviceRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use RegisterDeviceRequest.ProtoReflect.Descriptor instead.
func (*RegisterDeviceRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{25}
+ return file_api_proto_rawDescGZIP(), []int{29}
}
func (x *RegisterDeviceRequest) GetDevice() *Device {
@@ -1735,7 +1979,7 @@ type RegisterDeviceResponse struct {
func (x *RegisterDeviceResponse) Reset() {
*x = RegisterDeviceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[26]
+ mi := &file_api_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1748,7 +1992,7 @@ func (x *RegisterDeviceResponse) String() string {
func (*RegisterDeviceResponse) ProtoMessage() {}
func (x *RegisterDeviceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[26]
+ mi := &file_api_proto_msgTypes[30]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1761,7 +2005,7 @@ func (x *RegisterDeviceResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use RegisterDeviceResponse.ProtoReflect.Descriptor instead.
func (*RegisterDeviceResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{26}
+ return file_api_proto_rawDescGZIP(), []int{30}
}
func (x *RegisterDeviceResponse) GetDeviceName() string {
@@ -1782,7 +2026,7 @@ type CreateDeviceModelRequest struct {
func (x *CreateDeviceModelRequest) Reset() {
*x = CreateDeviceModelRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[27]
+ mi := &file_api_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1795,7 +2039,7 @@ func (x *CreateDeviceModelRequest) String() string {
func (*CreateDeviceModelRequest) ProtoMessage() {}
func (x *CreateDeviceModelRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[27]
+ mi := &file_api_proto_msgTypes[31]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1808,7 +2052,7 @@ func (x *CreateDeviceModelRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use CreateDeviceModelRequest.ProtoReflect.Descriptor instead.
func (*CreateDeviceModelRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{27}
+ return file_api_proto_rawDescGZIP(), []int{31}
}
func (x *CreateDeviceModelRequest) GetModel() *DeviceModel {
@@ -1829,7 +2073,7 @@ type CreateDeviceModelResponse struct {
func (x *CreateDeviceModelResponse) Reset() {
*x = CreateDeviceModelResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[28]
+ mi := &file_api_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1842,7 +2086,7 @@ func (x *CreateDeviceModelResponse) String() string {
func (*CreateDeviceModelResponse) ProtoMessage() {}
func (x *CreateDeviceModelResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[28]
+ mi := &file_api_proto_msgTypes[32]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1855,7 +2099,7 @@ func (x *CreateDeviceModelResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use CreateDeviceModelResponse.ProtoReflect.Descriptor instead.
func (*CreateDeviceModelResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{28}
+ return file_api_proto_rawDescGZIP(), []int{32}
}
func (x *CreateDeviceModelResponse) GetDeviceModelName() string {
@@ -1876,7 +2120,7 @@ type RemoveDeviceRequest struct {
func (x *RemoveDeviceRequest) Reset() {
*x = RemoveDeviceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[29]
+ mi := &file_api_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1889,7 +2133,7 @@ func (x *RemoveDeviceRequest) String() string {
func (*RemoveDeviceRequest) ProtoMessage() {}
func (x *RemoveDeviceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[29]
+ mi := &file_api_proto_msgTypes[33]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1902,7 +2146,7 @@ func (x *RemoveDeviceRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use RemoveDeviceRequest.ProtoReflect.Descriptor instead.
func (*RemoveDeviceRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{29}
+ return file_api_proto_rawDescGZIP(), []int{33}
}
func (x *RemoveDeviceRequest) GetDeviceName() string {
@@ -1921,7 +2165,7 @@ type RemoveDeviceResponse struct {
func (x *RemoveDeviceResponse) Reset() {
*x = RemoveDeviceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[30]
+ mi := &file_api_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1934,7 +2178,7 @@ func (x *RemoveDeviceResponse) String() string {
func (*RemoveDeviceResponse) ProtoMessage() {}
func (x *RemoveDeviceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[30]
+ mi := &file_api_proto_msgTypes[34]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1947,7 +2191,7 @@ func (x *RemoveDeviceResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use RemoveDeviceResponse.ProtoReflect.Descriptor instead.
func (*RemoveDeviceResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{30}
+ return file_api_proto_rawDescGZIP(), []int{34}
}
type RemoveDeviceModelRequest struct {
@@ -1961,7 +2205,7 @@ type RemoveDeviceModelRequest struct {
func (x *RemoveDeviceModelRequest) Reset() {
*x = RemoveDeviceModelRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[31]
+ mi := &file_api_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1974,7 +2218,7 @@ func (x *RemoveDeviceModelRequest) String() string {
func (*RemoveDeviceModelRequest) ProtoMessage() {}
func (x *RemoveDeviceModelRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[31]
+ mi := &file_api_proto_msgTypes[35]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1987,7 +2231,7 @@ func (x *RemoveDeviceModelRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use RemoveDeviceModelRequest.ProtoReflect.Descriptor instead.
func (*RemoveDeviceModelRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{31}
+ return file_api_proto_rawDescGZIP(), []int{35}
}
func (x *RemoveDeviceModelRequest) GetModelName() string {
@@ -2006,7 +2250,7 @@ type RemoveDeviceModelResponse struct {
func (x *RemoveDeviceModelResponse) Reset() {
*x = RemoveDeviceModelResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[32]
+ mi := &file_api_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2019,7 +2263,7 @@ func (x *RemoveDeviceModelResponse) String() string {
func (*RemoveDeviceModelResponse) ProtoMessage() {}
func (x *RemoveDeviceModelResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[32]
+ mi := &file_api_proto_msgTypes[36]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2032,7 +2276,7 @@ func (x *RemoveDeviceModelResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use RemoveDeviceModelResponse.ProtoReflect.Descriptor instead.
func (*RemoveDeviceModelResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{32}
+ return file_api_proto_rawDescGZIP(), []int{36}
}
type UpdateDeviceRequest struct {
@@ -2046,7 +2290,7 @@ type UpdateDeviceRequest struct {
func (x *UpdateDeviceRequest) Reset() {
*x = UpdateDeviceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[33]
+ mi := &file_api_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2059,7 +2303,7 @@ func (x *UpdateDeviceRequest) String() string {
func (*UpdateDeviceRequest) ProtoMessage() {}
func (x *UpdateDeviceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[33]
+ mi := &file_api_proto_msgTypes[37]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2072,7 +2316,7 @@ func (x *UpdateDeviceRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateDeviceRequest.ProtoReflect.Descriptor instead.
func (*UpdateDeviceRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{33}
+ return file_api_proto_rawDescGZIP(), []int{37}
}
func (x *UpdateDeviceRequest) GetDevice() *Device {
@@ -2091,7 +2335,7 @@ type UpdateDeviceResponse struct {
func (x *UpdateDeviceResponse) Reset() {
*x = UpdateDeviceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[34]
+ mi := &file_api_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2104,7 +2348,7 @@ func (x *UpdateDeviceResponse) String() string {
func (*UpdateDeviceResponse) ProtoMessage() {}
func (x *UpdateDeviceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[34]
+ mi := &file_api_proto_msgTypes[38]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2117,7 +2361,7 @@ func (x *UpdateDeviceResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateDeviceResponse.ProtoReflect.Descriptor instead.
func (*UpdateDeviceResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{34}
+ return file_api_proto_rawDescGZIP(), []int{38}
}
type UpdateDeviceModelRequest struct {
@@ -2131,7 +2375,7 @@ type UpdateDeviceModelRequest struct {
func (x *UpdateDeviceModelRequest) Reset() {
*x = UpdateDeviceModelRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[35]
+ mi := &file_api_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2144,7 +2388,7 @@ func (x *UpdateDeviceModelRequest) String() string {
func (*UpdateDeviceModelRequest) ProtoMessage() {}
func (x *UpdateDeviceModelRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[35]
+ mi := &file_api_proto_msgTypes[39]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2157,7 +2401,7 @@ func (x *UpdateDeviceModelRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateDeviceModelRequest.ProtoReflect.Descriptor instead.
func (*UpdateDeviceModelRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{35}
+ return file_api_proto_rawDescGZIP(), []int{39}
}
func (x *UpdateDeviceModelRequest) GetModel() *DeviceModel {
@@ -2176,7 +2420,7 @@ type UpdateDeviceModelResponse struct {
func (x *UpdateDeviceModelResponse) Reset() {
*x = UpdateDeviceModelResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[36]
+ mi := &file_api_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2189,7 +2433,7 @@ func (x *UpdateDeviceModelResponse) String() string {
func (*UpdateDeviceModelResponse) ProtoMessage() {}
func (x *UpdateDeviceModelResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[36]
+ mi := &file_api_proto_msgTypes[40]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2202,7 +2446,7 @@ func (x *UpdateDeviceModelResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateDeviceModelResponse.ProtoReflect.Descriptor instead.
func (*UpdateDeviceModelResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{36}
+ return file_api_proto_rawDescGZIP(), []int{40}
}
type GetDeviceRequest struct {
@@ -2216,7 +2460,7 @@ type GetDeviceRequest struct {
func (x *GetDeviceRequest) Reset() {
*x = GetDeviceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[37]
+ mi := &file_api_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2229,7 +2473,7 @@ func (x *GetDeviceRequest) String() string {
func (*GetDeviceRequest) ProtoMessage() {}
func (x *GetDeviceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[37]
+ mi := &file_api_proto_msgTypes[41]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2242,7 +2486,7 @@ func (x *GetDeviceRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetDeviceRequest.ProtoReflect.Descriptor instead.
func (*GetDeviceRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{37}
+ return file_api_proto_rawDescGZIP(), []int{41}
}
func (x *GetDeviceRequest) GetDeviceName() string {
@@ -2263,7 +2507,7 @@ type GetDeviceResponse struct {
func (x *GetDeviceResponse) Reset() {
*x = GetDeviceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[38]
+ mi := &file_api_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2276,7 +2520,7 @@ func (x *GetDeviceResponse) String() string {
func (*GetDeviceResponse) ProtoMessage() {}
func (x *GetDeviceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[38]
+ mi := &file_api_proto_msgTypes[42]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2289,7 +2533,7 @@ func (x *GetDeviceResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetDeviceResponse.ProtoReflect.Descriptor instead.
func (*GetDeviceResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{38}
+ return file_api_proto_rawDescGZIP(), []int{42}
}
func (x *GetDeviceResponse) GetDevice() *Device {
@@ -2440,184 +2684,214 @@ var file_api_proto_rawDesc = []byte{
0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x10, 0x0a, 0x03, 0x71, 0x6f, 0x73, 0x18, 0x03,
0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x71, 0x6f, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x74,
0x61, 0x69, 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x74,
- 0x61, 0x69, 0x6e, 0x65, 0x64, 0x22, 0x44, 0x0a, 0x08, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f,
- 0x64, 0x12, 0x38, 0x0a, 0x09, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44,
- 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32,
- 0x52, 0x09, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x22, 0xb9, 0x01, 0x0a, 0x11,
+ 0x61, 0x69, 0x6e, 0x65, 0x64, 0x22, 0xa9, 0x01, 0x0a, 0x08, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68,
+ 0x6f, 0x64, 0x12, 0x38, 0x0a, 0x09, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62,
- 0x32, 0x12, 0x54, 0x0a, 0x15, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x43, 0x6c,
- 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x1e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x75,
+ 0x32, 0x52, 0x09, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x12, 0x2c, 0x0a, 0x05,
+ 0x72, 0x65, 0x64, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x76, 0x31,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65,
+ 0x64, 0x69, 0x73, 0x52, 0x05, 0x72, 0x65, 0x64, 0x69, 0x73, 0x12, 0x35, 0x0a, 0x08, 0x74, 0x64,
+ 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x76,
+ 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54,
+ 0x44, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x74, 0x64, 0x65, 0x6e, 0x67, 0x69, 0x6e,
+ 0x65, 0x22, 0xb9, 0x01, 0x0a, 0x11, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x49, 0x6e,
+ 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x12, 0x54, 0x0a, 0x15, 0x69, 0x6e, 0x66, 0x6c, 0x75,
0x78, 0x64, 0x62, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x52, 0x15, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e,
- 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4e, 0x0a, 0x13, 0x69, 0x6e, 0x66, 0x6c, 0x75,
- 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x15, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62,
+ 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4e, 0x0a,
+ 0x13, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, 0x31, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61,
+ 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x13, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78,
+ 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xc4, 0x01,
+ 0x0a, 0x13, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65,
+ 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x61, 0x73,
+ 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x37, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x02,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49,
0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x52, 0x13, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74,
- 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xc4, 0x01, 0x0a, 0x13, 0x49, 0x6e, 0x66, 0x6c,
- 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
- 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e,
- 0x74, 0x12, 0x37, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25,
- 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64,
- 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x54, 0x61, 0x67,
- 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69,
- 0x65, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69,
- 0x65, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x1a, 0x36, 0x0a, 0x08, 0x54, 0x61, 0x67, 0x45, 0x6e, 0x74,
- 0x72, 0x79, 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, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x53,
- 0x0a, 0x15, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e,
- 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x6f, 0x72, 0x67,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x72, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x62,
- 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x75, 0x63,
- 0x6b, 0x65, 0x74, 0x22, 0xa7, 0x01, 0x0a, 0x0a, 0x4d, 0x61, 0x70, 0x70, 0x65, 0x72, 0x49, 0x6e,
- 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
- 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
- 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
- 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x18, 0x0a,
- 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07,
- 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65,
- 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x7a, 0x0a,
- 0x19, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61,
- 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
- 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x0e, 0x72, 0x65,
- 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6f, 0x72,
- 0x74, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x33, 0x0a, 0x0c, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x05, 0x74, 0x77, 0x69,
- 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
- 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x52, 0x05, 0x74, 0x77, 0x69, 0x6e, 0x73, 0x22, 0x9e,
- 0x01, 0x0a, 0x04, 0x54, 0x77, 0x69, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x70, 0x65,
- 0x72, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70,
- 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x0f, 0x6f,
- 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54,
- 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x0f, 0x6f, 0x62, 0x73,
- 0x65, 0x72, 0x76, 0x65, 0x64, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x12, 0x31, 0x0a, 0x08,
- 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15,
- 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f,
- 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x22,
- 0xa2, 0x01, 0x0a, 0x0c, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79,
- 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
- 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
- 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
- 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 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, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64,
- 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
+ 0x69, 0x67, 0x2e, 0x54, 0x61, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x74, 0x61, 0x67,
+ 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x1a, 0x36, 0x0a, 0x08,
+ 0x54, 0x61, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 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, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
- 0x3a, 0x02, 0x38, 0x01, 0x22, 0x1c, 0x0a, 0x1a, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x40, 0x0a, 0x15, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x06, 0x64,
- 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x31,
- 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x06, 0x64, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x22, 0x38, 0x0a, 0x16, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72,
- 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e,
- 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x46,
- 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f,
- 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x05, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x31, 0x62, 0x65,
- 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52,
- 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x45, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64,
- 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x35, 0x0a,
- 0x13, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61,
- 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
- 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x38, 0x0a, 0x18,
- 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65,
- 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x6f, 0x64, 0x65,
- 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f, 0x64,
- 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x1b, 0x0a, 0x19, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
- 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x06, 0x64, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x31, 0x62,
- 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x06, 0x64, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x46, 0x0a, 0x18, 0x55,
- 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
- 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x22, 0x1b, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x32, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61,
- 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
- 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3c, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63,
- 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x06, 0x64, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x31, 0x62, 0x65,
- 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x06, 0x64, 0x65, 0x76, 0x69,
- 0x63, 0x65, 0x32, 0xcc, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x61, 0x6e,
- 0x61, 0x67, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x53, 0x0a, 0x0e, 0x4d,
- 0x61, 0x70, 0x70, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1e, 0x2e,
- 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x70, 0x70, 0x65, 0x72, 0x52, 0x65,
- 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e,
- 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x70, 0x70, 0x65, 0x72, 0x52, 0x65,
- 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
- 0x12, 0x5f, 0x0a, 0x12, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
- 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
- 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61,
- 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x76, 0x31, 0x62,
- 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63,
- 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x00, 0x32, 0xe8, 0x04, 0x0a, 0x13, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x61, 0x70, 0x70,
- 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x53, 0x0a, 0x0e, 0x52, 0x65, 0x67,
- 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x1e, 0x2e, 0x76, 0x31,
- 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x76, 0x31,
- 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d,
- 0x0a, 0x0c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x1c,
- 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44,
- 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x76,
- 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a,
- 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x1c, 0x2e,
- 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x76, 0x31,
- 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69,
- 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x11,
- 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65,
- 0x6c, 0x12, 0x21, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61,
- 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43,
+ 0x3a, 0x02, 0x38, 0x01, 0x22, 0x53, 0x0a, 0x15, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62,
+ 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x10, 0x0a,
+ 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12,
+ 0x10, 0x0a, 0x03, 0x6f, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x72,
+ 0x67, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x59, 0x0a, 0x0d, 0x44, 0x42, 0x4d,
+ 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x64, 0x69, 0x73, 0x12, 0x48, 0x0a, 0x11, 0x72, 0x65,
+ 0x64, 0x69, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x52, 0x65, 0x64, 0x69, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x52, 0x11, 0x72, 0x65, 0x64, 0x69, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x22, 0x77, 0x0a, 0x11, 0x52, 0x65, 0x64, 0x69, 0x73, 0x43, 0x6c, 0x69,
+ 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x64, 0x64,
+ 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x12, 0x0e, 0x0a,
+ 0x02, 0x64, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x64, 0x62, 0x12, 0x1a, 0x0a,
+ 0x08, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52,
+ 0x08, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x69, 0x6e,
+ 0x49, 0x64, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52,
+ 0x0c, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x73, 0x22, 0x65, 0x0a,
+ 0x10, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54, 0x44, 0x45, 0x6e, 0x67, 0x69, 0x6e,
+ 0x65, 0x12, 0x51, 0x0a, 0x14, 0x74, 0x64, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x43, 0x6c, 0x69,
+ 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x1d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x44, 0x45, 0x6e, 0x67, 0x69,
+ 0x6e, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x14,
+ 0x74, 0x64, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x22, 0x42, 0x0a, 0x14, 0x54, 0x44, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65,
+ 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04,
+ 0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72,
+ 0x12, 0x16, 0x0a, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa7, 0x01, 0x0a, 0x0a, 0x4d, 0x61, 0x70,
+ 0x70, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76,
+ 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72,
+ 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56,
+ 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05,
+ 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61,
+ 0x74, 0x65, 0x22, 0x7a, 0x0a, 0x19, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12,
+ 0x3d, 0x0a, 0x0e, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0e,
+ 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x33,
+ 0x0a, 0x0c, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23,
+ 0x0a, 0x05, 0x74, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e,
+ 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x52, 0x05, 0x74, 0x77,
+ 0x69, 0x6e, 0x73, 0x22, 0x9e, 0x01, 0x0a, 0x04, 0x54, 0x77, 0x69, 0x6e, 0x12, 0x22, 0x0a, 0x0c,
+ 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65,
+ 0x12, 0x3f, 0x0a, 0x0f, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x44, 0x65, 0x73, 0x69,
+ 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x31, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79,
+ 0x52, 0x0f, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65,
+ 0x64, 0x12, 0x31, 0x0a, 0x08, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x77,
+ 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6f,
+ 0x72, 0x74, 0x65, 0x64, 0x22, 0xa2, 0x01, 0x0a, 0x0c, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f,
+ 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x6d,
+ 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e,
+ 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70,
+ 0x65, 0x72, 0x74, 0x79, 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, 0x3b, 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,
+ 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x1c, 0x0a, 0x1a, 0x52, 0x65, 0x70,
+ 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x40, 0x0a, 0x15, 0x52, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x27, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x0f, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63,
+ 0x65, 0x52, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x38, 0x0a, 0x16, 0x52, 0x65, 0x67,
+ 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e,
+ 0x61, 0x6d, 0x65, 0x22, 0x46, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76,
+ 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x2a, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14,
+ 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d,
+ 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x45, 0x0a, 0x19, 0x43,
0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x11, 0x52, 0x65,
- 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12,
- 0x21, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
- 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d,
- 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61,
- 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x21, 0x2e,
- 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74,
- 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x12, 0x19, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65,
- 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a,
- 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69,
- 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x0c, 0x5a, 0x0a,
- 0x2e, 0x2f, 0x3b, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x33,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x64, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x0f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61,
+ 0x6d, 0x65, 0x22, 0x35, 0x0a, 0x13, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76,
+ 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64,
+ 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x52, 0x65, 0x6d,
+ 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x38, 0x0a, 0x18, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63,
+ 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a,
+ 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x1b, 0x0a, 0x19, 0x52,
+ 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x27, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0f, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
+ 0x52, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x46, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
+ 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x05,
+ 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x31,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65,
+ 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x1b, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76,
+ 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64,
+ 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3c, 0x0a, 0x11, 0x47, 0x65, 0x74,
+ 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27,
+ 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
+ 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52,
+ 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x32, 0xcc, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x12, 0x53, 0x0a, 0x0e, 0x4d, 0x61, 0x70, 0x70, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74,
+ 0x65, 0x72, 0x12, 0x1e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x70,
+ 0x70, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x70,
+ 0x70, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x12, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44,
+ 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x22, 0x2e, 0x76, 0x31,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x23, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74,
+ 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x32, 0xe8, 0x04, 0x0a, 0x13, 0x44, 0x65, 0x76, 0x69, 0x63,
+ 0x65, 0x4d, 0x61, 0x70, 0x70, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x53,
+ 0x0a, 0x0e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
+ 0x12, 0x1e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1f, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76,
+ 0x69, 0x63, 0x65, 0x12, 0x1c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65,
+ 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x1d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f,
+ 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x12, 0x1c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x00, 0x12, 0x5c, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63,
+ 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x21, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64,
+ 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
+ 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
+ 0x5c, 0x0a, 0x11, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d,
+ 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x21, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52,
+ 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f,
+ 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a,
+ 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64,
+ 0x65, 0x6c, 0x12, 0x21, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65,
+ 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x47,
+ 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x19, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65,
+ 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x00, 0x42, 0x0c, 0x5a, 0x0a, 0x2e, 0x2f, 0x3b, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62,
+ 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -2632,7 +2906,7 @@ func file_api_proto_rawDescGZIP() []byte {
return file_api_proto_rawDescData
}
-var file_api_proto_msgTypes = make([]protoimpl.MessageInfo, 42)
+var file_api_proto_msgTypes = make([]protoimpl.MessageInfo, 46)
var file_api_proto_goTypes = []interface{}{
(*MapperRegisterRequest)(nil), // 0: v1beta1.MapperRegisterRequest
(*MapperRegisterResponse)(nil), // 1: v1beta1.MapperRegisterResponse
@@ -2653,89 +2927,97 @@ var file_api_proto_goTypes = []interface{}{
(*DBMethodInfluxdb2)(nil), // 16: v1beta1.DBMethodInfluxdb2
(*Influxdb2DataConfig)(nil), // 17: v1beta1.Influxdb2DataConfig
(*Influxdb2ClientConfig)(nil), // 18: v1beta1.Influxdb2ClientConfig
- (*MapperInfo)(nil), // 19: v1beta1.MapperInfo
- (*ReportDeviceStatusRequest)(nil), // 20: v1beta1.ReportDeviceStatusRequest
- (*DeviceStatus)(nil), // 21: v1beta1.DeviceStatus
- (*Twin)(nil), // 22: v1beta1.Twin
- (*TwinProperty)(nil), // 23: v1beta1.TwinProperty
- (*ReportDeviceStatusResponse)(nil), // 24: v1beta1.ReportDeviceStatusResponse
- (*RegisterDeviceRequest)(nil), // 25: v1beta1.RegisterDeviceRequest
- (*RegisterDeviceResponse)(nil), // 26: v1beta1.RegisterDeviceResponse
- (*CreateDeviceModelRequest)(nil), // 27: v1beta1.CreateDeviceModelRequest
- (*CreateDeviceModelResponse)(nil), // 28: v1beta1.CreateDeviceModelResponse
- (*RemoveDeviceRequest)(nil), // 29: v1beta1.RemoveDeviceRequest
- (*RemoveDeviceResponse)(nil), // 30: v1beta1.RemoveDeviceResponse
- (*RemoveDeviceModelRequest)(nil), // 31: v1beta1.RemoveDeviceModelRequest
- (*RemoveDeviceModelResponse)(nil), // 32: v1beta1.RemoveDeviceModelResponse
- (*UpdateDeviceRequest)(nil), // 33: v1beta1.UpdateDeviceRequest
- (*UpdateDeviceResponse)(nil), // 34: v1beta1.UpdateDeviceResponse
- (*UpdateDeviceModelRequest)(nil), // 35: v1beta1.UpdateDeviceModelRequest
- (*UpdateDeviceModelResponse)(nil), // 36: v1beta1.UpdateDeviceModelResponse
- (*GetDeviceRequest)(nil), // 37: v1beta1.GetDeviceRequest
- (*GetDeviceResponse)(nil), // 38: v1beta1.GetDeviceResponse
- nil, // 39: v1beta1.CustomizedValue.DataEntry
- nil, // 40: v1beta1.Influxdb2DataConfig.TagEntry
- nil, // 41: v1beta1.TwinProperty.MetadataEntry
- (*anypb.Any)(nil), // 42: google.protobuf.Any
+ (*DBMethodRedis)(nil), // 19: v1beta1.DBMethodRedis
+ (*RedisClientConfig)(nil), // 20: v1beta1.RedisClientConfig
+ (*DBMethodTDEngine)(nil), // 21: v1beta1.DBMethodTDEngine
+ (*TDEngineClientConfig)(nil), // 22: v1beta1.TDEngineClientConfig
+ (*MapperInfo)(nil), // 23: v1beta1.MapperInfo
+ (*ReportDeviceStatusRequest)(nil), // 24: v1beta1.ReportDeviceStatusRequest
+ (*DeviceStatus)(nil), // 25: v1beta1.DeviceStatus
+ (*Twin)(nil), // 26: v1beta1.Twin
+ (*TwinProperty)(nil), // 27: v1beta1.TwinProperty
+ (*ReportDeviceStatusResponse)(nil), // 28: v1beta1.ReportDeviceStatusResponse
+ (*RegisterDeviceRequest)(nil), // 29: v1beta1.RegisterDeviceRequest
+ (*RegisterDeviceResponse)(nil), // 30: v1beta1.RegisterDeviceResponse
+ (*CreateDeviceModelRequest)(nil), // 31: v1beta1.CreateDeviceModelRequest
+ (*CreateDeviceModelResponse)(nil), // 32: v1beta1.CreateDeviceModelResponse
+ (*RemoveDeviceRequest)(nil), // 33: v1beta1.RemoveDeviceRequest
+ (*RemoveDeviceResponse)(nil), // 34: v1beta1.RemoveDeviceResponse
+ (*RemoveDeviceModelRequest)(nil), // 35: v1beta1.RemoveDeviceModelRequest
+ (*RemoveDeviceModelResponse)(nil), // 36: v1beta1.RemoveDeviceModelResponse
+ (*UpdateDeviceRequest)(nil), // 37: v1beta1.UpdateDeviceRequest
+ (*UpdateDeviceResponse)(nil), // 38: v1beta1.UpdateDeviceResponse
+ (*UpdateDeviceModelRequest)(nil), // 39: v1beta1.UpdateDeviceModelRequest
+ (*UpdateDeviceModelResponse)(nil), // 40: v1beta1.UpdateDeviceModelResponse
+ (*GetDeviceRequest)(nil), // 41: v1beta1.GetDeviceRequest
+ (*GetDeviceResponse)(nil), // 42: v1beta1.GetDeviceResponse
+ nil, // 43: v1beta1.CustomizedValue.DataEntry
+ nil, // 44: v1beta1.Influxdb2DataConfig.TagEntry
+ nil, // 45: v1beta1.TwinProperty.MetadataEntry
+ (*anypb.Any)(nil), // 46: google.protobuf.Any
}
var file_api_proto_depIdxs = []int32{
- 19, // 0: v1beta1.MapperRegisterRequest.mapper:type_name -> v1beta1.MapperInfo
+ 23, // 0: v1beta1.MapperRegisterRequest.mapper:type_name -> v1beta1.MapperInfo
2, // 1: v1beta1.MapperRegisterResponse.modelList:type_name -> v1beta1.DeviceModel
6, // 2: v1beta1.MapperRegisterResponse.deviceList:type_name -> v1beta1.Device
3, // 3: v1beta1.DeviceModel.spec:type_name -> v1beta1.DeviceModelSpec
4, // 4: v1beta1.DeviceModelSpec.properties:type_name -> v1beta1.ModelProperty
5, // 5: v1beta1.DeviceModelSpec.commands:type_name -> v1beta1.DeviceCommand
7, // 6: v1beta1.Device.spec:type_name -> v1beta1.DeviceSpec
- 21, // 7: v1beta1.Device.status:type_name -> v1beta1.DeviceStatus
+ 25, // 7: v1beta1.Device.status:type_name -> v1beta1.DeviceStatus
9, // 8: v1beta1.DeviceSpec.protocol:type_name -> v1beta1.ProtocolConfig
8, // 9: v1beta1.DeviceSpec.properties:type_name -> v1beta1.DeviceProperty
- 23, // 10: v1beta1.DeviceProperty.desired:type_name -> v1beta1.TwinProperty
+ 27, // 10: v1beta1.DeviceProperty.desired:type_name -> v1beta1.TwinProperty
10, // 11: v1beta1.DeviceProperty.visitors:type_name -> v1beta1.VisitorConfig
12, // 12: v1beta1.DeviceProperty.pushMethod:type_name -> v1beta1.PushMethod
11, // 13: v1beta1.ProtocolConfig.configData:type_name -> v1beta1.CustomizedValue
11, // 14: v1beta1.VisitorConfig.configData:type_name -> v1beta1.CustomizedValue
- 39, // 15: v1beta1.CustomizedValue.data:type_name -> v1beta1.CustomizedValue.DataEntry
+ 43, // 15: v1beta1.CustomizedValue.data:type_name -> v1beta1.CustomizedValue.DataEntry
13, // 16: v1beta1.PushMethod.http:type_name -> v1beta1.PushMethodHTTP
14, // 17: v1beta1.PushMethod.mqtt:type_name -> v1beta1.PushMethodMQTT
15, // 18: v1beta1.PushMethod.dbMethod:type_name -> v1beta1.DBMethod
16, // 19: v1beta1.DBMethod.influxdb2:type_name -> v1beta1.DBMethodInfluxdb2
- 18, // 20: v1beta1.DBMethodInfluxdb2.influxdb2ClientConfig:type_name -> v1beta1.Influxdb2ClientConfig
- 17, // 21: v1beta1.DBMethodInfluxdb2.influxdb2DataConfig:type_name -> v1beta1.Influxdb2DataConfig
- 40, // 22: v1beta1.Influxdb2DataConfig.tag:type_name -> v1beta1.Influxdb2DataConfig.TagEntry
- 21, // 23: v1beta1.ReportDeviceStatusRequest.reportedDevice:type_name -> v1beta1.DeviceStatus
- 22, // 24: v1beta1.DeviceStatus.twins:type_name -> v1beta1.Twin
- 23, // 25: v1beta1.Twin.observedDesired:type_name -> v1beta1.TwinProperty
- 23, // 26: v1beta1.Twin.reported:type_name -> v1beta1.TwinProperty
- 41, // 27: v1beta1.TwinProperty.metadata:type_name -> v1beta1.TwinProperty.MetadataEntry
- 6, // 28: v1beta1.RegisterDeviceRequest.device:type_name -> v1beta1.Device
- 2, // 29: v1beta1.CreateDeviceModelRequest.model:type_name -> v1beta1.DeviceModel
- 6, // 30: v1beta1.UpdateDeviceRequest.device:type_name -> v1beta1.Device
- 2, // 31: v1beta1.UpdateDeviceModelRequest.model:type_name -> v1beta1.DeviceModel
- 6, // 32: v1beta1.GetDeviceResponse.device:type_name -> v1beta1.Device
- 42, // 33: v1beta1.CustomizedValue.DataEntry.value:type_name -> google.protobuf.Any
- 0, // 34: v1beta1.DeviceManagerService.MapperRegister:input_type -> v1beta1.MapperRegisterRequest
- 20, // 35: v1beta1.DeviceManagerService.ReportDeviceStatus:input_type -> v1beta1.ReportDeviceStatusRequest
- 25, // 36: v1beta1.DeviceMapperService.RegisterDevice:input_type -> v1beta1.RegisterDeviceRequest
- 29, // 37: v1beta1.DeviceMapperService.RemoveDevice:input_type -> v1beta1.RemoveDeviceRequest
- 33, // 38: v1beta1.DeviceMapperService.UpdateDevice:input_type -> v1beta1.UpdateDeviceRequest
- 27, // 39: v1beta1.DeviceMapperService.CreateDeviceModel:input_type -> v1beta1.CreateDeviceModelRequest
- 31, // 40: v1beta1.DeviceMapperService.RemoveDeviceModel:input_type -> v1beta1.RemoveDeviceModelRequest
- 35, // 41: v1beta1.DeviceMapperService.UpdateDeviceModel:input_type -> v1beta1.UpdateDeviceModelRequest
- 37, // 42: v1beta1.DeviceMapperService.GetDevice:input_type -> v1beta1.GetDeviceRequest
- 1, // 43: v1beta1.DeviceManagerService.MapperRegister:output_type -> v1beta1.MapperRegisterResponse
- 24, // 44: v1beta1.DeviceManagerService.ReportDeviceStatus:output_type -> v1beta1.ReportDeviceStatusResponse
- 26, // 45: v1beta1.DeviceMapperService.RegisterDevice:output_type -> v1beta1.RegisterDeviceResponse
- 30, // 46: v1beta1.DeviceMapperService.RemoveDevice:output_type -> v1beta1.RemoveDeviceResponse
- 34, // 47: v1beta1.DeviceMapperService.UpdateDevice:output_type -> v1beta1.UpdateDeviceResponse
- 28, // 48: v1beta1.DeviceMapperService.CreateDeviceModel:output_type -> v1beta1.CreateDeviceModelResponse
- 32, // 49: v1beta1.DeviceMapperService.RemoveDeviceModel:output_type -> v1beta1.RemoveDeviceModelResponse
- 36, // 50: v1beta1.DeviceMapperService.UpdateDeviceModel:output_type -> v1beta1.UpdateDeviceModelResponse
- 38, // 51: v1beta1.DeviceMapperService.GetDevice:output_type -> v1beta1.GetDeviceResponse
- 43, // [43:52] is the sub-list for method output_type
- 34, // [34:43] is the sub-list for method input_type
- 34, // [34:34] is the sub-list for extension type_name
- 34, // [34:34] is the sub-list for extension extendee
- 0, // [0:34] is the sub-list for field type_name
+ 19, // 20: v1beta1.DBMethod.redis:type_name -> v1beta1.DBMethodRedis
+ 21, // 21: v1beta1.DBMethod.tdengine:type_name -> v1beta1.DBMethodTDEngine
+ 18, // 22: v1beta1.DBMethodInfluxdb2.influxdb2ClientConfig:type_name -> v1beta1.Influxdb2ClientConfig
+ 17, // 23: v1beta1.DBMethodInfluxdb2.influxdb2DataConfig:type_name -> v1beta1.Influxdb2DataConfig
+ 44, // 24: v1beta1.Influxdb2DataConfig.tag:type_name -> v1beta1.Influxdb2DataConfig.TagEntry
+ 20, // 25: v1beta1.DBMethodRedis.redisClientConfig:type_name -> v1beta1.RedisClientConfig
+ 22, // 26: v1beta1.DBMethodTDEngine.tdEngineClientConfig:type_name -> v1beta1.TDEngineClientConfig
+ 25, // 27: v1beta1.ReportDeviceStatusRequest.reportedDevice:type_name -> v1beta1.DeviceStatus
+ 26, // 28: v1beta1.DeviceStatus.twins:type_name -> v1beta1.Twin
+ 27, // 29: v1beta1.Twin.observedDesired:type_name -> v1beta1.TwinProperty
+ 27, // 30: v1beta1.Twin.reported:type_name -> v1beta1.TwinProperty
+ 45, // 31: v1beta1.TwinProperty.metadata:type_name -> v1beta1.TwinProperty.MetadataEntry
+ 6, // 32: v1beta1.RegisterDeviceRequest.device:type_name -> v1beta1.Device
+ 2, // 33: v1beta1.CreateDeviceModelRequest.model:type_name -> v1beta1.DeviceModel
+ 6, // 34: v1beta1.UpdateDeviceRequest.device:type_name -> v1beta1.Device
+ 2, // 35: v1beta1.UpdateDeviceModelRequest.model:type_name -> v1beta1.DeviceModel
+ 6, // 36: v1beta1.GetDeviceResponse.device:type_name -> v1beta1.Device
+ 46, // 37: v1beta1.CustomizedValue.DataEntry.value:type_name -> google.protobuf.Any
+ 0, // 38: v1beta1.DeviceManagerService.MapperRegister:input_type -> v1beta1.MapperRegisterRequest
+ 24, // 39: v1beta1.DeviceManagerService.ReportDeviceStatus:input_type -> v1beta1.ReportDeviceStatusRequest
+ 29, // 40: v1beta1.DeviceMapperService.RegisterDevice:input_type -> v1beta1.RegisterDeviceRequest
+ 33, // 41: v1beta1.DeviceMapperService.RemoveDevice:input_type -> v1beta1.RemoveDeviceRequest
+ 37, // 42: v1beta1.DeviceMapperService.UpdateDevice:input_type -> v1beta1.UpdateDeviceRequest
+ 31, // 43: v1beta1.DeviceMapperService.CreateDeviceModel:input_type -> v1beta1.CreateDeviceModelRequest
+ 35, // 44: v1beta1.DeviceMapperService.RemoveDeviceModel:input_type -> v1beta1.RemoveDeviceModelRequest
+ 39, // 45: v1beta1.DeviceMapperService.UpdateDeviceModel:input_type -> v1beta1.UpdateDeviceModelRequest
+ 41, // 46: v1beta1.DeviceMapperService.GetDevice:input_type -> v1beta1.GetDeviceRequest
+ 1, // 47: v1beta1.DeviceManagerService.MapperRegister:output_type -> v1beta1.MapperRegisterResponse
+ 28, // 48: v1beta1.DeviceManagerService.ReportDeviceStatus:output_type -> v1beta1.ReportDeviceStatusResponse
+ 30, // 49: v1beta1.DeviceMapperService.RegisterDevice:output_type -> v1beta1.RegisterDeviceResponse
+ 34, // 50: v1beta1.DeviceMapperService.RemoveDevice:output_type -> v1beta1.RemoveDeviceResponse
+ 38, // 51: v1beta1.DeviceMapperService.UpdateDevice:output_type -> v1beta1.UpdateDeviceResponse
+ 32, // 52: v1beta1.DeviceMapperService.CreateDeviceModel:output_type -> v1beta1.CreateDeviceModelResponse
+ 36, // 53: v1beta1.DeviceMapperService.RemoveDeviceModel:output_type -> v1beta1.RemoveDeviceModelResponse
+ 40, // 54: v1beta1.DeviceMapperService.UpdateDeviceModel:output_type -> v1beta1.UpdateDeviceModelResponse
+ 42, // 55: v1beta1.DeviceMapperService.GetDevice:output_type -> v1beta1.GetDeviceResponse
+ 47, // [47:56] is the sub-list for method output_type
+ 38, // [38:47] is the sub-list for method input_type
+ 38, // [38:38] is the sub-list for extension type_name
+ 38, // [38:38] is the sub-list for extension extendee
+ 0, // [0:38] is the sub-list for field type_name
}
func init() { file_api_proto_init() }
@@ -2973,7 +3255,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*MapperInfo); i {
+ switch v := v.(*DBMethodRedis); i {
case 0:
return &v.state
case 1:
@@ -2985,7 +3267,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ReportDeviceStatusRequest); i {
+ switch v := v.(*RedisClientConfig); i {
case 0:
return &v.state
case 1:
@@ -2997,7 +3279,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeviceStatus); i {
+ switch v := v.(*DBMethodTDEngine); i {
case 0:
return &v.state
case 1:
@@ -3009,7 +3291,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Twin); i {
+ switch v := v.(*TDEngineClientConfig); i {
case 0:
return &v.state
case 1:
@@ -3021,7 +3303,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*TwinProperty); i {
+ switch v := v.(*MapperInfo); i {
case 0:
return &v.state
case 1:
@@ -3033,7 +3315,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ReportDeviceStatusResponse); i {
+ switch v := v.(*ReportDeviceStatusRequest); i {
case 0:
return &v.state
case 1:
@@ -3045,7 +3327,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RegisterDeviceRequest); i {
+ switch v := v.(*DeviceStatus); i {
case 0:
return &v.state
case 1:
@@ -3057,7 +3339,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RegisterDeviceResponse); i {
+ switch v := v.(*Twin); i {
case 0:
return &v.state
case 1:
@@ -3069,7 +3351,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateDeviceModelRequest); i {
+ switch v := v.(*TwinProperty); i {
case 0:
return &v.state
case 1:
@@ -3081,7 +3363,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateDeviceModelResponse); i {
+ switch v := v.(*ReportDeviceStatusResponse); i {
case 0:
return &v.state
case 1:
@@ -3093,7 +3375,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RemoveDeviceRequest); i {
+ switch v := v.(*RegisterDeviceRequest); i {
case 0:
return &v.state
case 1:
@@ -3105,7 +3387,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RemoveDeviceResponse); i {
+ switch v := v.(*RegisterDeviceResponse); i {
case 0:
return &v.state
case 1:
@@ -3117,7 +3399,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RemoveDeviceModelRequest); i {
+ switch v := v.(*CreateDeviceModelRequest); i {
case 0:
return &v.state
case 1:
@@ -3129,7 +3411,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RemoveDeviceModelResponse); i {
+ switch v := v.(*CreateDeviceModelResponse); i {
case 0:
return &v.state
case 1:
@@ -3141,7 +3423,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateDeviceRequest); i {
+ switch v := v.(*RemoveDeviceRequest); i {
case 0:
return &v.state
case 1:
@@ -3153,7 +3435,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateDeviceResponse); i {
+ switch v := v.(*RemoveDeviceResponse); i {
case 0:
return &v.state
case 1:
@@ -3165,7 +3447,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateDeviceModelRequest); i {
+ switch v := v.(*RemoveDeviceModelRequest); i {
case 0:
return &v.state
case 1:
@@ -3177,7 +3459,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateDeviceModelResponse); i {
+ switch v := v.(*RemoveDeviceModelResponse); i {
case 0:
return &v.state
case 1:
@@ -3189,7 +3471,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetDeviceRequest); i {
+ switch v := v.(*UpdateDeviceRequest); i {
case 0:
return &v.state
case 1:
@@ -3201,6 +3483,54 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateDeviceResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_api_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateDeviceModelRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_api_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateDeviceModelResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_api_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetDeviceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_api_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetDeviceResponse); i {
case 0:
return &v.state
@@ -3219,7 +3549,7 @@ func file_api_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_api_proto_rawDesc,
NumEnums: 0,
- NumMessages: 42,
+ NumMessages: 46,
NumExtensions: 0,
NumServices: 2,
},
diff --git a/pkg/apis/dmi/v1beta1/api.proto b/pkg/apis/dmi/v1beta1/api.proto
index a6f948599..ae112e773 100644
--- a/pkg/apis/dmi/v1beta1/api.proto
+++ b/pkg/apis/dmi/v1beta1/api.proto
@@ -245,6 +245,8 @@ message PushMethodMQTT {
message DBMethod{
// the config of database .
DBMethodInfluxdb2 influxdb2 = 1;
+ DBMethodRedis redis = 2;
+ DBMethodTDEngine tdengine = 3;
}
message DBMethodInfluxdb2{
@@ -269,6 +271,34 @@ message Influxdb2ClientConfig{
string bucket = 3;
}
+message DBMethodRedis{
+ // data config when push data to redis
+ RedisClientConfig redisClientConfig = 1;
+}
+
+message RedisClientConfig{
+ // redis address
+ string addr = 1;
+ // number of redis db
+ int32 db = 2;
+ // number of redis poolsize
+ int32 poolsize = 3;
+ // number of redis minidleconns
+ int32 minIdleConns =4;
+}
+
+message DBMethodTDEngine{
+ // data config when push data to tdengine
+ TDEngineClientConfig tdEngineClientConfig = 1;
+}
+
+message TDEngineClientConfig{
+ // tdengine address,like 127.0.0.1:6041
+ string addr = 1;
+ // tdengine database name
+ string dbname = 2;
+}
+
// MapperInfo is the information of mapper.
message MapperInfo {
// name of the mapper.
diff --git a/pkg/apis/dmi/v1beta1/api_grpc.pb.go b/pkg/apis/dmi/v1beta1/api_grpc.pb.go
index 092fdb34f..8d37c66a9 100644
--- a/pkg/apis/dmi/v1beta1/api_grpc.pb.go
+++ b/pkg/apis/dmi/v1beta1/api_grpc.pb.go
@@ -18,7 +18,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
-// - protoc v3.19.4
+// - protoc v3.20.3
// source: api.proto
package v1beta1
diff --git a/staging/src/github.com/kubeedge/mapper-framework/_template/mapper/data/dbmethod/redis/client.go b/staging/src/github.com/kubeedge/mapper-framework/_template/mapper/data/dbmethod/redis/client.go
index 5dded6e49..eb09a9ff2 100644
--- a/staging/src/github.com/kubeedge/mapper-framework/_template/mapper/data/dbmethod/redis/client.go
+++ b/staging/src/github.com/kubeedge/mapper-framework/_template/mapper/data/dbmethod/redis/client.go
@@ -1,35 +1,121 @@
package redis
import (
+ "context"
+ "encoding/json"
+ "github.com/go-redis/redis/v8"
"github.com/kubeedge/Template/pkg/common"
- "github.com/kubeedge/Template/pkg/global"
+ "k8s.io/klog/v2"
+ "os"
+ "strconv"
+)
+
+var (
+ RedisCli *redis.Client
)
type DataBaseConfig struct {
+ RedisClientConfig *RedisClientConfig
+}
+
+type RedisClientConfig struct {
+ Addr string `json:"addr,omitempty"`
+ DB int `json:"db,omitempty"`
+ PoolSize int `json:"poolSize,omitempty"`
+ MinIdleConns int `json:"minIdleConns,omitempty"`
}
-func NewDataBaseClient() (global.DataBaseClient, error) {
- return &DataBaseConfig{}, nil
+func NewDataBaseClient(config json.RawMessage) (*DataBaseConfig, error) {
+ configdata := new(RedisClientConfig)
+ err := json.Unmarshal(config, configdata)
+ if err != nil {
+ return nil, err
+ }
+ return &DataBaseConfig{RedisClientConfig: configdata}, nil
}
func (d *DataBaseConfig) InitDbClient() error {
- //TODO implement me
- panic("implement me")
+ var password string
+ password = os.Getenv("PASSWORD")
+ RedisCli = redis.NewClient(&redis.Options{
+ Addr: d.RedisClientConfig.Addr,
+ Password: password,
+ DB: d.RedisClientConfig.DB,
+ PoolSize: d.RedisClientConfig.PoolSize,
+ MinIdleConns: d.RedisClientConfig.MinIdleConns,
+ })
+ pong, err := RedisCli.Ping(context.Background()).Result()
+ if err != nil {
+ klog.Errorf("init redis database failed, err = %v", err)
+ return err
+ } else {
+ klog.V(1).Infof("init redis database successfully, with return cmd %s", pong)
+ }
+ return nil
}
func (d *DataBaseConfig) CloseSession() {
- //TODO implement me
- panic("implement me")
+ err := RedisCli.Close()
+ if err != nil {
+ klog.V(4).Info("close database failed")
+ }
}
-func (d *DataBaseConfig) AddData(data *common.DataModel) {
- //TODO implement me
- panic("implement me")
+func (d *DataBaseConfig) AddData(data *common.DataModel) error {
+ ctx := context.Background()
+ // The key to construct the ordered set, here DeviceName is used as the key
+ klog.V(1).Infof("deviceName:%s", data.DeviceName)
+ // Check if the current ordered set exists
+ exists, err := RedisCli.Exists(ctx, data.DeviceName).Result()
+ if err != nil {
+ klog.V(4).Info("Exit AddData")
+ return err
+ }
+ deviceData := "TimeStamp: " + strconv.FormatInt(data.TimeStamp, 10) + " PropertyName: " + data.PropertyName + " data: " + data.Value
+ if exists == 0 {
+ // The ordered set does not exist, create a new ordered set and add data
+ _, err = RedisCli.ZAdd(ctx, data.DeviceName, &redis.Z{
+ Score: float64(data.TimeStamp),
+ Member: deviceData,
+ }).Result()
+ if err != nil {
+ klog.V(4).Info("Exit AddData")
+ return err
+ }
+ } else {
+ // The ordered set already exists, add data directly
+ _, err = RedisCli.ZAdd(ctx, data.DeviceName, &redis.Z{
+ Score: float64(data.TimeStamp),
+ Member: deviceData,
+ }).Result()
+ if err != nil {
+ klog.V(4).Info("Exit AddData")
+ return err
+ }
+ }
+ return nil
}
func (d *DataBaseConfig) GetDataByDeviceName(deviceName string) ([]*common.DataModel, error) {
- //TODO implement me
- panic("implement me")
+ ctx := context.Background()
+
+ dataJSON, err := RedisCli.ZRevRange(ctx, deviceName, 0, -1).Result()
+ if err != nil {
+ klog.V(4).Infof("fail query data for deviceName,err:%v", err)
+ }
+
+ var dataModels []*common.DataModel
+
+ for _, jsonStr := range dataJSON {
+ var data common.DataModel
+ if err := json.Unmarshal([]byte(jsonStr), &data); err != nil {
+ klog.V(4).Infof("Error unMarshaling data: %v\n", err)
+ continue
+ }
+
+ dataModels = append(dataModels, &data)
+ }
+ return dataModels, nil
}
func (d *DataBaseConfig) GetPropertyDataByDeviceName(deviceName string, propertyData string) ([]*common.DataModel, error) {
diff --git a/staging/src/github.com/kubeedge/mapper-framework/_template/mapper/data/dbmethod/tdengine/client.go b/staging/src/github.com/kubeedge/mapper-framework/_template/mapper/data/dbmethod/tdengine/client.go
new file mode 100644
index 000000000..551f435e8
--- /dev/null
+++ b/staging/src/github.com/kubeedge/mapper-framework/_template/mapper/data/dbmethod/tdengine/client.go
@@ -0,0 +1,154 @@
+package tdengine
+
+import (
+ "database/sql"
+ "encoding/json"
+ "fmt"
+ "github.com/kubeedge/Template/pkg/common"
+ _ "github.com/taosdata/driver-go/v3/taosRestful"
+ "k8s.io/klog/v2"
+ "os"
+ "strings"
+ "time"
+)
+
+var (
+ DB *sql.DB
+)
+
+type DataBaseConfig struct {
+ TDEngineClientConfig *TDEngineClientConfig `json:"config,omitempty"`
+}
+type TDEngineClientConfig struct {
+ Addr string `json:"addr,omitempty"`
+ DBName string `json:"dbName,omitempty"`
+}
+
+func NewDataBaseClient(config json.RawMessage) (*DataBaseConfig, error) {
+ configdata := new(TDEngineClientConfig)
+ err := json.Unmarshal(config, configdata)
+ if err != nil {
+ return nil, err
+ }
+ return &DataBaseConfig{
+ TDEngineClientConfig: configdata,
+ }, nil
+}
+func (d *DataBaseConfig) InitDbClient() error {
+ username := os.Getenv("USERNAME")
+ password := os.Getenv("PASSWORD")
+ dsn := fmt.Sprintf("%s:%s@http(%s)/%s", username, password, d.TDEngineClientConfig.Addr, d.TDEngineClientConfig.DBName)
+ var err error
+ DB, err = sql.Open("taosRestful", dsn)
+ if err != nil {
+ klog.Errorf("init TDEngine db fail, err= %v:", err)
+ } else {
+ klog.V(1).Infof("init TDEngine database successfully")
+ }
+ return nil
+}
+
+func (d *DataBaseConfig) CloseSessio() {
+ err := DB.Close()
+ if err != nil {
+ klog.Errorf("close TDEngine failed")
+ }
+}
+
+func (d *DataBaseConfig) AddData(data *common.DataModel) error {
+
+ legal_table := strings.Replace(data.DeviceName, "-", "_", -1)
+ legal_tag := strings.Replace(data.PropertyName, "-", "_", -1)
+
+ stable_name := fmt.Sprintf("SHOW STABLES LIKE '%s'", legal_table)
+ stabel := fmt.Sprintf("CREATE STABLE %s (ts timestamp, devicename binary(64), propertyname binary(64), data binary(64),type binary(64)) TAGS (localtion binary(64));", legal_table)
+
+ datatime := time.Unix(data.TimeStamp/1e3, 0).Format("2006-01-02 15:04:05")
+ insertSQL := fmt.Sprintf("INSERT INTO %s USING %s TAGS ('%s') VALUES('%v','%s', '%s', '%s', '%s');",
+ legal_tag, legal_table, legal_tag, datatime, data.DeviceName, data.PropertyName, data.Value, data.Type)
+
+ rows, _ := DB.Query(stable_name)
+ defer rows.Close()
+
+ if err := rows.Err(); err != nil {
+ klog.Errorf("query stable failed:%v", err)
+ }
+
+ switch rows.Next() {
+ case false:
+ _, err := DB.Exec(stabel)
+ if err != nil {
+ klog.Errorf("create stable failed %v\n", err)
+ }
+ _, err = DB.Exec(insertSQL)
+ if err != nil {
+ klog.Errorf("failed add data to TdEngine:%v", err)
+ }
+ case true:
+ _, err := DB.Exec(insertSQL)
+ if err != nil {
+ klog.Errorf("failed add data to TdEngine:%v", err)
+ }
+ default:
+ klog.Infoln("failed add data to TdEngine")
+ }
+
+ return nil
+}
+func (d *DataBaseConfig) GetDataByDeviceName(deviceName string) ([]*common.DataModel, error) {
+ querySql := fmt.Sprintf("SELECT ts, devicename, propertyname, data, type FROM %s", deviceName)
+ rows, err := DB.Query(querySql)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var dataModel []*common.DataModel
+ for rows.Next() {
+ var data common.DataModel
+ var ts time.Time
+ err := rows.Scan(&ts, &data.DeviceName, &data.PropertyName, &data.Value, &data.Type)
+ if err != nil {
+ klog.Errorf(" data scan error: %v\n", err)
+ //fmt.Printf("scan error:\n", err)
+ return nil, err
+ }
+ data.TimeStamp = ts.Unix()
+ dataModel = append(dataModel, &data)
+ }
+ return dataModel, nil
+}
+func (d *DataBaseConfig) GetPropertyDataByDeviceName(deviceName string, propertyData string) ([]*common.DataModel, error) {
+ //TODO implement me
+ panic("implement me")
+}
+func (d *DataBaseConfig) GetDataByTimeRange(deviceName string, start int64, end int64) ([]*common.DataModel, error) {
+
+ legal_table := strings.Replace(deviceName, "-", "_", -1)
+ startTime := time.Unix(start, 0).UTC().Format("2006-01-02 15:04:05")
+ endTime := time.Unix(end, 0).UTC().Format("2006-01-02 15:04:05")
+ //Query data within a specified time range
+ querySQL := fmt.Sprintf("SELECT ts, devicename, propertyname, data, type FROM %s WHERE ts >= '%s' AND ts <= '%s'", legal_table, startTime, endTime)
+ fmt.Println(querySQL)
+ rows, err := DB.Query(querySQL)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+
+ var dataModels []*common.DataModel
+ for rows.Next() {
+ var data common.DataModel
+ var ts time.Time
+ err := rows.Scan(&ts, &data.DeviceName, &data.PropertyName, &data.Value, &data.Type)
+ if err != nil {
+ klog.V(4).Infof("data scan failed:%v", err)
+ continue
+ }
+ dataModels = append(dataModels, &data)
+ }
+ return dataModels, nil
+}
+func (d *DataBaseConfig) DeleteDataByTimeRange(start int64, end int64) ([]*common.DataModel, error) {
+ //TODO implement me
+ panic("implement me")
+}
diff --git a/staging/src/github.com/kubeedge/mapper-framework/_template/mapper/device/device.go b/staging/src/github.com/kubeedge/mapper-framework/_template/mapper/device/device.go
index c4ddf7de8..3769c1a8c 100644
--- a/staging/src/github.com/kubeedge/mapper-framework/_template/mapper/device/device.go
+++ b/staging/src/github.com/kubeedge/mapper-framework/_template/mapper/device/device.go
@@ -14,6 +14,8 @@ import (
"k8s.io/klog/v2"
dbInflux "github.com/kubeedge/Template/data/dbmethod/influxdb2"
+ dbRedis "github.com/kubeedge/Template/data/dbmethod/redis"
+ dbTdengine "github.com/kubeedge/Template/data/dbmethod/tdengine"
httpMethod "github.com/kubeedge/Template/data/publish/http"
mqttMethod "github.com/kubeedge/Template/data/publish/mqtt"
"github.com/kubeedge/Template/driver"
@@ -245,6 +247,94 @@ func dbHandler(ctx context.Context, twin *common.Twin, client *driver.Customized
}
}
}()
+ case "redis":
+ dbConfig, err := dbRedis.NewDataBaseClient(twin.Property.PushMethod.DBMethod.DBConfig.RedisClientConfig)
+ if err != nil {
+ klog.Errorf("new database client error: %v", err)
+ return
+ }
+ err = dbConfig.InitDbClient()
+ if err != nil {
+ klog.Errorf("init redis database client err: %v", err)
+ return
+ }
+ reportCycle := time.Duration(twin.Property.ReportCycle)
+ if reportCycle == 0 {
+ reportCycle = 1 * time.Second
+ }
+ ticker := time.NewTicker(reportCycle)
+ go func() {
+ for {
+ select {
+ case <-ticker.C:
+ deviceData, err := client.GetDeviceData(visitorConfig)
+ if err != nil {
+ klog.Errorf("publish error: %v", err)
+ continue
+ }
+ sData, err := common.ConvertToString(deviceData)
+ if err != nil {
+ klog.Errorf("Failed to convert publish method data : %v", err)
+ continue
+ }
+ dataModel.SetValue(sData)
+ dataModel.SetTimeStamp()
+
+ err = dbConfig.AddData(dataModel)
+ if err != nil {
+ klog.Errorf("redis database add data error: %v", err)
+ return
+ }
+ case <-ctx.Done():
+ dbConfig.CloseSession()
+ return
+ }
+ }
+ }()
+ case "tdengine":
+ dbConfig, err := dbTdengine.NewDataBaseClient(twin.Property.PushMethod.DBMethod.DBConfig.TDEngineClientConfig)
+ if err != nil {
+ klog.Errorf("new database client error: %v", err)
+ return
+ }
+ err = dbConfig.InitDbClient()
+ if err != nil {
+ klog.Errorf("init database client err: %v", err)
+ return
+ }
+ reportCycle := time.Duration(twin.Property.ReportCycle)
+ if reportCycle == 0 {
+ reportCycle = 1 * time.Second
+ }
+ ticker := time.NewTicker(reportCycle)
+ go func() {
+ for {
+ select {
+ case <-ticker.C:
+ deviceData, err := client.GetDeviceData(visitorConfig)
+ if err != nil {
+ klog.Errorf("publish error: %v", err)
+ continue
+ }
+ sData, err := common.ConvertToString(deviceData)
+ if err != nil {
+ klog.Errorf("Failed to convert publish method data : %v", err)
+ continue
+ }
+ dataModel.SetValue(sData)
+ dataModel.SetTimeStamp()
+
+ err = dbConfig.AddData(dataModel)
+ if err != nil {
+ klog.Errorf("tdengine database add data error: %v", err)
+ return
+ }
+ case <-ctx.Done():
+ dbConfig.CloseSessio()
+ return
+ }
+ }
+ }()
}
}
diff --git a/staging/src/github.com/kubeedge/mapper-framework/pkg/common/configmaptype.go b/staging/src/github.com/kubeedge/mapper-framework/pkg/common/configmaptype.go
index 0e8e756e8..bfdd0dad6 100644
--- a/staging/src/github.com/kubeedge/mapper-framework/pkg/common/configmaptype.go
+++ b/staging/src/github.com/kubeedge/mapper-framework/pkg/common/configmaptype.go
@@ -96,7 +96,8 @@ type DBMethodConfig struct {
type DBConfig struct {
Influxdb2ClientConfig json.RawMessage `json:"influxdb2ClientConfig"`
Influxdb2DataConfig json.RawMessage `json:"influxdb2DataConfig"`
- RedisConfigData json.RawMessage `json:"redisConfigData"`
+ RedisClientConfig json.RawMessage `json:"redisClientConfig"`
+ TDEngineClientConfig json.RawMessage `json:"TDEngineClientConfig"`
}
// Metadata is the metadata for data.
diff --git a/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api.pb.go b/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api.pb.go
index 19e252dbd..1a89812c6 100644
--- a/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api.pb.go
+++ b/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api.pb.go
@@ -1,5 +1,5 @@
/*
-Copyright 2022 The KubeEdge Authors.
+Copyright 2023 The KubeEdge Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -19,8 +19,8 @@ Copyright 2022 The KubeEdge Authors.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.26.0
-// protoc v3.19.4
+// protoc-gen-go v1.31.0
+// protoc v3.20.3
// source: api.proto
package v1beta1
@@ -1089,6 +1089,8 @@ type DBMethod struct {
// the config of database .
Influxdb2 *DBMethodInfluxdb2 `protobuf:"bytes,1,opt,name=influxdb2,proto3" json:"influxdb2,omitempty"`
+ Redis *DBMethodRedis `protobuf:"bytes,2,opt,name=redis,proto3" json:"redis,omitempty"`
+ Tdengine *DBMethodTDEngine `protobuf:"bytes,3,opt,name=tdengine,proto3" json:"tdengine,omitempty"`
}
func (x *DBMethod) Reset() {
@@ -1130,6 +1132,20 @@ func (x *DBMethod) GetInfluxdb2() *DBMethodInfluxdb2 {
return nil
}
+func (x *DBMethod) GetRedis() *DBMethodRedis {
+ if x != nil {
+ return x.Redis
+ }
+ return nil
+}
+
+func (x *DBMethod) GetTdengine() *DBMethodTDEngine {
+ if x != nil {
+ return x.Tdengine
+ }
+ return nil
+}
+
type DBMethodInfluxdb2 struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -1316,6 +1332,234 @@ func (x *Influxdb2ClientConfig) GetBucket() string {
return ""
}
+type DBMethodRedis struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // data config when push data to redis
+ RedisClientConfig *RedisClientConfig `protobuf:"bytes,1,opt,name=redisClientConfig,proto3" json:"redisClientConfig,omitempty"`
+}
+
+func (x *DBMethodRedis) Reset() {
+ *x = DBMethodRedis{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_api_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DBMethodRedis) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DBMethodRedis) ProtoMessage() {}
+
+func (x *DBMethodRedis) ProtoReflect() protoreflect.Message {
+ mi := &file_api_proto_msgTypes[19]
+ 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 DBMethodRedis.ProtoReflect.Descriptor instead.
+func (*DBMethodRedis) Descriptor() ([]byte, []int) {
+ return file_api_proto_rawDescGZIP(), []int{19}
+}
+
+func (x *DBMethodRedis) GetRedisClientConfig() *RedisClientConfig {
+ if x != nil {
+ return x.RedisClientConfig
+ }
+ return nil
+}
+
+type RedisClientConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // redis address
+ Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
+ // number of redis db
+ Db int32 `protobuf:"varint,2,opt,name=db,proto3" json:"db,omitempty"`
+ // number of redis poolsize
+ Poolsize int32 `protobuf:"varint,3,opt,name=poolsize,proto3" json:"poolsize,omitempty"`
+ // number of redis minidleconns
+ MinIdleConns int32 `protobuf:"varint,4,opt,name=minIdleConns,proto3" json:"minIdleConns,omitempty"`
+}
+
+func (x *RedisClientConfig) Reset() {
+ *x = RedisClientConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_api_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RedisClientConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RedisClientConfig) ProtoMessage() {}
+
+func (x *RedisClientConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_api_proto_msgTypes[20]
+ 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 RedisClientConfig.ProtoReflect.Descriptor instead.
+func (*RedisClientConfig) Descriptor() ([]byte, []int) {
+ return file_api_proto_rawDescGZIP(), []int{20}
+}
+
+func (x *RedisClientConfig) GetAddr() string {
+ if x != nil {
+ return x.Addr
+ }
+ return ""
+}
+
+func (x *RedisClientConfig) GetDb() int32 {
+ if x != nil {
+ return x.Db
+ }
+ return 0
+}
+
+func (x *RedisClientConfig) GetPoolsize() int32 {
+ if x != nil {
+ return x.Poolsize
+ }
+ return 0
+}
+
+func (x *RedisClientConfig) GetMinIdleConns() int32 {
+ if x != nil {
+ return x.MinIdleConns
+ }
+ return 0
+}
+
+type DBMethodTDEngine struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // data config when push data to tdengine
+ TdEngineClientConfig *TDEngineClientConfig `protobuf:"bytes,1,opt,name=tdEngineClientConfig,proto3" json:"tdEngineClientConfig,omitempty"`
+}
+
+func (x *DBMethodTDEngine) Reset() {
+ *x = DBMethodTDEngine{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_api_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DBMethodTDEngine) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DBMethodTDEngine) ProtoMessage() {}
+
+func (x *DBMethodTDEngine) ProtoReflect() protoreflect.Message {
+ mi := &file_api_proto_msgTypes[21]
+ 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 DBMethodTDEngine.ProtoReflect.Descriptor instead.
+func (*DBMethodTDEngine) Descriptor() ([]byte, []int) {
+ return file_api_proto_rawDescGZIP(), []int{21}
+}
+
+func (x *DBMethodTDEngine) GetTdEngineClientConfig() *TDEngineClientConfig {
+ if x != nil {
+ return x.TdEngineClientConfig
+ }
+ return nil
+}
+
+type TDEngineClientConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // tdengine address,like 127.0.0.1:6041
+ Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
+ // tdengine database name
+ Dbname string `protobuf:"bytes,2,opt,name=dbname,proto3" json:"dbname,omitempty"`
+}
+
+func (x *TDEngineClientConfig) Reset() {
+ *x = TDEngineClientConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_api_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TDEngineClientConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TDEngineClientConfig) ProtoMessage() {}
+
+func (x *TDEngineClientConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_api_proto_msgTypes[22]
+ 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 TDEngineClientConfig.ProtoReflect.Descriptor instead.
+func (*TDEngineClientConfig) Descriptor() ([]byte, []int) {
+ return file_api_proto_rawDescGZIP(), []int{22}
+}
+
+func (x *TDEngineClientConfig) GetAddr() string {
+ if x != nil {
+ return x.Addr
+ }
+ return ""
+}
+
+func (x *TDEngineClientConfig) GetDbname() string {
+ if x != nil {
+ return x.Dbname
+ }
+ return ""
+}
+
// MapperInfo is the information of mapper.
type MapperInfo struct {
state protoimpl.MessageState
@@ -1339,7 +1583,7 @@ type MapperInfo struct {
func (x *MapperInfo) Reset() {
*x = MapperInfo{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[19]
+ mi := &file_api_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1352,7 +1596,7 @@ func (x *MapperInfo) String() string {
func (*MapperInfo) ProtoMessage() {}
func (x *MapperInfo) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[19]
+ mi := &file_api_proto_msgTypes[23]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1365,7 +1609,7 @@ func (x *MapperInfo) ProtoReflect() protoreflect.Message {
// Deprecated: Use MapperInfo.ProtoReflect.Descriptor instead.
func (*MapperInfo) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{19}
+ return file_api_proto_rawDescGZIP(), []int{23}
}
func (x *MapperInfo) GetName() string {
@@ -1422,7 +1666,7 @@ type ReportDeviceStatusRequest struct {
func (x *ReportDeviceStatusRequest) Reset() {
*x = ReportDeviceStatusRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[20]
+ mi := &file_api_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1435,7 +1679,7 @@ func (x *ReportDeviceStatusRequest) String() string {
func (*ReportDeviceStatusRequest) ProtoMessage() {}
func (x *ReportDeviceStatusRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[20]
+ mi := &file_api_proto_msgTypes[24]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1448,7 +1692,7 @@ func (x *ReportDeviceStatusRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ReportDeviceStatusRequest.ProtoReflect.Descriptor instead.
func (*ReportDeviceStatusRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{20}
+ return file_api_proto_rawDescGZIP(), []int{24}
}
func (x *ReportDeviceStatusRequest) GetDeviceName() string {
@@ -1478,7 +1722,7 @@ type DeviceStatus struct {
func (x *DeviceStatus) Reset() {
*x = DeviceStatus{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[21]
+ mi := &file_api_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1491,7 +1735,7 @@ func (x *DeviceStatus) String() string {
func (*DeviceStatus) ProtoMessage() {}
func (x *DeviceStatus) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[21]
+ mi := &file_api_proto_msgTypes[25]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1504,7 +1748,7 @@ func (x *DeviceStatus) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeviceStatus.ProtoReflect.Descriptor instead.
func (*DeviceStatus) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{21}
+ return file_api_proto_rawDescGZIP(), []int{25}
}
func (x *DeviceStatus) GetTwins() []*Twin {
@@ -1531,7 +1775,7 @@ type Twin struct {
func (x *Twin) Reset() {
*x = Twin{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[22]
+ mi := &file_api_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1544,7 +1788,7 @@ func (x *Twin) String() string {
func (*Twin) ProtoMessage() {}
func (x *Twin) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[22]
+ mi := &file_api_proto_msgTypes[26]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1557,7 +1801,7 @@ func (x *Twin) ProtoReflect() protoreflect.Message {
// Deprecated: Use Twin.ProtoReflect.Descriptor instead.
func (*Twin) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{22}
+ return file_api_proto_rawDescGZIP(), []int{26}
}
func (x *Twin) GetPropertyName() string {
@@ -1596,7 +1840,7 @@ type TwinProperty struct {
func (x *TwinProperty) Reset() {
*x = TwinProperty{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[23]
+ mi := &file_api_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1609,7 +1853,7 @@ func (x *TwinProperty) String() string {
func (*TwinProperty) ProtoMessage() {}
func (x *TwinProperty) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[23]
+ mi := &file_api_proto_msgTypes[27]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1622,7 +1866,7 @@ func (x *TwinProperty) ProtoReflect() protoreflect.Message {
// Deprecated: Use TwinProperty.ProtoReflect.Descriptor instead.
func (*TwinProperty) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{23}
+ return file_api_proto_rawDescGZIP(), []int{27}
}
func (x *TwinProperty) GetValue() string {
@@ -1648,7 +1892,7 @@ type ReportDeviceStatusResponse struct {
func (x *ReportDeviceStatusResponse) Reset() {
*x = ReportDeviceStatusResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[24]
+ mi := &file_api_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1661,7 +1905,7 @@ func (x *ReportDeviceStatusResponse) String() string {
func (*ReportDeviceStatusResponse) ProtoMessage() {}
func (x *ReportDeviceStatusResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[24]
+ mi := &file_api_proto_msgTypes[28]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1674,7 +1918,7 @@ func (x *ReportDeviceStatusResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use ReportDeviceStatusResponse.ProtoReflect.Descriptor instead.
func (*ReportDeviceStatusResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{24}
+ return file_api_proto_rawDescGZIP(), []int{28}
}
type RegisterDeviceRequest struct {
@@ -1688,7 +1932,7 @@ type RegisterDeviceRequest struct {
func (x *RegisterDeviceRequest) Reset() {
*x = RegisterDeviceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[25]
+ mi := &file_api_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1701,7 +1945,7 @@ func (x *RegisterDeviceRequest) String() string {
func (*RegisterDeviceRequest) ProtoMessage() {}
func (x *RegisterDeviceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[25]
+ mi := &file_api_proto_msgTypes[29]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1714,7 +1958,7 @@ func (x *RegisterDeviceRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use RegisterDeviceRequest.ProtoReflect.Descriptor instead.
func (*RegisterDeviceRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{25}
+ return file_api_proto_rawDescGZIP(), []int{29}
}
func (x *RegisterDeviceRequest) GetDevice() *Device {
@@ -1735,7 +1979,7 @@ type RegisterDeviceResponse struct {
func (x *RegisterDeviceResponse) Reset() {
*x = RegisterDeviceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[26]
+ mi := &file_api_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1748,7 +1992,7 @@ func (x *RegisterDeviceResponse) String() string {
func (*RegisterDeviceResponse) ProtoMessage() {}
func (x *RegisterDeviceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[26]
+ mi := &file_api_proto_msgTypes[30]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1761,7 +2005,7 @@ func (x *RegisterDeviceResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use RegisterDeviceResponse.ProtoReflect.Descriptor instead.
func (*RegisterDeviceResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{26}
+ return file_api_proto_rawDescGZIP(), []int{30}
}
func (x *RegisterDeviceResponse) GetDeviceName() string {
@@ -1782,7 +2026,7 @@ type CreateDeviceModelRequest struct {
func (x *CreateDeviceModelRequest) Reset() {
*x = CreateDeviceModelRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[27]
+ mi := &file_api_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1795,7 +2039,7 @@ func (x *CreateDeviceModelRequest) String() string {
func (*CreateDeviceModelRequest) ProtoMessage() {}
func (x *CreateDeviceModelRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[27]
+ mi := &file_api_proto_msgTypes[31]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1808,7 +2052,7 @@ func (x *CreateDeviceModelRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use CreateDeviceModelRequest.ProtoReflect.Descriptor instead.
func (*CreateDeviceModelRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{27}
+ return file_api_proto_rawDescGZIP(), []int{31}
}
func (x *CreateDeviceModelRequest) GetModel() *DeviceModel {
@@ -1829,7 +2073,7 @@ type CreateDeviceModelResponse struct {
func (x *CreateDeviceModelResponse) Reset() {
*x = CreateDeviceModelResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[28]
+ mi := &file_api_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1842,7 +2086,7 @@ func (x *CreateDeviceModelResponse) String() string {
func (*CreateDeviceModelResponse) ProtoMessage() {}
func (x *CreateDeviceModelResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[28]
+ mi := &file_api_proto_msgTypes[32]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1855,7 +2099,7 @@ func (x *CreateDeviceModelResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use CreateDeviceModelResponse.ProtoReflect.Descriptor instead.
func (*CreateDeviceModelResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{28}
+ return file_api_proto_rawDescGZIP(), []int{32}
}
func (x *CreateDeviceModelResponse) GetDeviceModelName() string {
@@ -1876,7 +2120,7 @@ type RemoveDeviceRequest struct {
func (x *RemoveDeviceRequest) Reset() {
*x = RemoveDeviceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[29]
+ mi := &file_api_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1889,7 +2133,7 @@ func (x *RemoveDeviceRequest) String() string {
func (*RemoveDeviceRequest) ProtoMessage() {}
func (x *RemoveDeviceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[29]
+ mi := &file_api_proto_msgTypes[33]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1902,7 +2146,7 @@ func (x *RemoveDeviceRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use RemoveDeviceRequest.ProtoReflect.Descriptor instead.
func (*RemoveDeviceRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{29}
+ return file_api_proto_rawDescGZIP(), []int{33}
}
func (x *RemoveDeviceRequest) GetDeviceName() string {
@@ -1921,7 +2165,7 @@ type RemoveDeviceResponse struct {
func (x *RemoveDeviceResponse) Reset() {
*x = RemoveDeviceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[30]
+ mi := &file_api_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1934,7 +2178,7 @@ func (x *RemoveDeviceResponse) String() string {
func (*RemoveDeviceResponse) ProtoMessage() {}
func (x *RemoveDeviceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[30]
+ mi := &file_api_proto_msgTypes[34]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1947,7 +2191,7 @@ func (x *RemoveDeviceResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use RemoveDeviceResponse.ProtoReflect.Descriptor instead.
func (*RemoveDeviceResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{30}
+ return file_api_proto_rawDescGZIP(), []int{34}
}
type RemoveDeviceModelRequest struct {
@@ -1961,7 +2205,7 @@ type RemoveDeviceModelRequest struct {
func (x *RemoveDeviceModelRequest) Reset() {
*x = RemoveDeviceModelRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[31]
+ mi := &file_api_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1974,7 +2218,7 @@ func (x *RemoveDeviceModelRequest) String() string {
func (*RemoveDeviceModelRequest) ProtoMessage() {}
func (x *RemoveDeviceModelRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[31]
+ mi := &file_api_proto_msgTypes[35]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1987,7 +2231,7 @@ func (x *RemoveDeviceModelRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use RemoveDeviceModelRequest.ProtoReflect.Descriptor instead.
func (*RemoveDeviceModelRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{31}
+ return file_api_proto_rawDescGZIP(), []int{35}
}
func (x *RemoveDeviceModelRequest) GetModelName() string {
@@ -2006,7 +2250,7 @@ type RemoveDeviceModelResponse struct {
func (x *RemoveDeviceModelResponse) Reset() {
*x = RemoveDeviceModelResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[32]
+ mi := &file_api_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2019,7 +2263,7 @@ func (x *RemoveDeviceModelResponse) String() string {
func (*RemoveDeviceModelResponse) ProtoMessage() {}
func (x *RemoveDeviceModelResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[32]
+ mi := &file_api_proto_msgTypes[36]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2032,7 +2276,7 @@ func (x *RemoveDeviceModelResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use RemoveDeviceModelResponse.ProtoReflect.Descriptor instead.
func (*RemoveDeviceModelResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{32}
+ return file_api_proto_rawDescGZIP(), []int{36}
}
type UpdateDeviceRequest struct {
@@ -2046,7 +2290,7 @@ type UpdateDeviceRequest struct {
func (x *UpdateDeviceRequest) Reset() {
*x = UpdateDeviceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[33]
+ mi := &file_api_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2059,7 +2303,7 @@ func (x *UpdateDeviceRequest) String() string {
func (*UpdateDeviceRequest) ProtoMessage() {}
func (x *UpdateDeviceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[33]
+ mi := &file_api_proto_msgTypes[37]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2072,7 +2316,7 @@ func (x *UpdateDeviceRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateDeviceRequest.ProtoReflect.Descriptor instead.
func (*UpdateDeviceRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{33}
+ return file_api_proto_rawDescGZIP(), []int{37}
}
func (x *UpdateDeviceRequest) GetDevice() *Device {
@@ -2091,7 +2335,7 @@ type UpdateDeviceResponse struct {
func (x *UpdateDeviceResponse) Reset() {
*x = UpdateDeviceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[34]
+ mi := &file_api_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2104,7 +2348,7 @@ func (x *UpdateDeviceResponse) String() string {
func (*UpdateDeviceResponse) ProtoMessage() {}
func (x *UpdateDeviceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[34]
+ mi := &file_api_proto_msgTypes[38]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2117,7 +2361,7 @@ func (x *UpdateDeviceResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateDeviceResponse.ProtoReflect.Descriptor instead.
func (*UpdateDeviceResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{34}
+ return file_api_proto_rawDescGZIP(), []int{38}
}
type UpdateDeviceModelRequest struct {
@@ -2131,7 +2375,7 @@ type UpdateDeviceModelRequest struct {
func (x *UpdateDeviceModelRequest) Reset() {
*x = UpdateDeviceModelRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[35]
+ mi := &file_api_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2144,7 +2388,7 @@ func (x *UpdateDeviceModelRequest) String() string {
func (*UpdateDeviceModelRequest) ProtoMessage() {}
func (x *UpdateDeviceModelRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[35]
+ mi := &file_api_proto_msgTypes[39]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2157,7 +2401,7 @@ func (x *UpdateDeviceModelRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateDeviceModelRequest.ProtoReflect.Descriptor instead.
func (*UpdateDeviceModelRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{35}
+ return file_api_proto_rawDescGZIP(), []int{39}
}
func (x *UpdateDeviceModelRequest) GetModel() *DeviceModel {
@@ -2176,7 +2420,7 @@ type UpdateDeviceModelResponse struct {
func (x *UpdateDeviceModelResponse) Reset() {
*x = UpdateDeviceModelResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[36]
+ mi := &file_api_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2189,7 +2433,7 @@ func (x *UpdateDeviceModelResponse) String() string {
func (*UpdateDeviceModelResponse) ProtoMessage() {}
func (x *UpdateDeviceModelResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[36]
+ mi := &file_api_proto_msgTypes[40]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2202,7 +2446,7 @@ func (x *UpdateDeviceModelResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateDeviceModelResponse.ProtoReflect.Descriptor instead.
func (*UpdateDeviceModelResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{36}
+ return file_api_proto_rawDescGZIP(), []int{40}
}
type GetDeviceRequest struct {
@@ -2216,7 +2460,7 @@ type GetDeviceRequest struct {
func (x *GetDeviceRequest) Reset() {
*x = GetDeviceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[37]
+ mi := &file_api_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2229,7 +2473,7 @@ func (x *GetDeviceRequest) String() string {
func (*GetDeviceRequest) ProtoMessage() {}
func (x *GetDeviceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[37]
+ mi := &file_api_proto_msgTypes[41]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2242,7 +2486,7 @@ func (x *GetDeviceRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetDeviceRequest.ProtoReflect.Descriptor instead.
func (*GetDeviceRequest) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{37}
+ return file_api_proto_rawDescGZIP(), []int{41}
}
func (x *GetDeviceRequest) GetDeviceName() string {
@@ -2263,7 +2507,7 @@ type GetDeviceResponse struct {
func (x *GetDeviceResponse) Reset() {
*x = GetDeviceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_api_proto_msgTypes[38]
+ mi := &file_api_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2276,7 +2520,7 @@ func (x *GetDeviceResponse) String() string {
func (*GetDeviceResponse) ProtoMessage() {}
func (x *GetDeviceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_api_proto_msgTypes[38]
+ mi := &file_api_proto_msgTypes[42]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2289,7 +2533,7 @@ func (x *GetDeviceResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetDeviceResponse.ProtoReflect.Descriptor instead.
func (*GetDeviceResponse) Descriptor() ([]byte, []int) {
- return file_api_proto_rawDescGZIP(), []int{38}
+ return file_api_proto_rawDescGZIP(), []int{42}
}
func (x *GetDeviceResponse) GetDevice() *Device {
@@ -2440,184 +2684,214 @@ var file_api_proto_rawDesc = []byte{
0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x10, 0x0a, 0x03, 0x71, 0x6f, 0x73, 0x18, 0x03,
0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x71, 0x6f, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x74,
0x61, 0x69, 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x74,
- 0x61, 0x69, 0x6e, 0x65, 0x64, 0x22, 0x44, 0x0a, 0x08, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f,
- 0x64, 0x12, 0x38, 0x0a, 0x09, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44,
- 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32,
- 0x52, 0x09, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x22, 0xb9, 0x01, 0x0a, 0x11,
+ 0x61, 0x69, 0x6e, 0x65, 0x64, 0x22, 0xa9, 0x01, 0x0a, 0x08, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68,
+ 0x6f, 0x64, 0x12, 0x38, 0x0a, 0x09, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62,
- 0x32, 0x12, 0x54, 0x0a, 0x15, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x43, 0x6c,
- 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x1e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x75,
+ 0x32, 0x52, 0x09, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x12, 0x2c, 0x0a, 0x05,
+ 0x72, 0x65, 0x64, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x76, 0x31,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65,
+ 0x64, 0x69, 0x73, 0x52, 0x05, 0x72, 0x65, 0x64, 0x69, 0x73, 0x12, 0x35, 0x0a, 0x08, 0x74, 0x64,
+ 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x76,
+ 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54,
+ 0x44, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x08, 0x74, 0x64, 0x65, 0x6e, 0x67, 0x69, 0x6e,
+ 0x65, 0x22, 0xb9, 0x01, 0x0a, 0x11, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x49, 0x6e,
+ 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x12, 0x54, 0x0a, 0x15, 0x69, 0x6e, 0x66, 0x6c, 0x75,
0x78, 0x64, 0x62, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x52, 0x15, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e,
- 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4e, 0x0a, 0x13, 0x69, 0x6e, 0x66, 0x6c, 0x75,
- 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x15, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62,
+ 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4e, 0x0a,
+ 0x13, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, 0x31, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61,
+ 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x13, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78,
+ 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xc4, 0x01,
+ 0x0a, 0x13, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65,
+ 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x61, 0x73,
+ 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x37, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x02,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49,
0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x52, 0x13, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74,
- 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xc4, 0x01, 0x0a, 0x13, 0x49, 0x6e, 0x66, 0x6c,
- 0x75, 0x78, 0x64, 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
- 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e,
- 0x74, 0x12, 0x37, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25,
- 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64,
- 0x62, 0x32, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x54, 0x61, 0x67,
- 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69,
- 0x65, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69,
- 0x65, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x1a, 0x36, 0x0a, 0x08, 0x54, 0x61, 0x67, 0x45, 0x6e, 0x74,
- 0x72, 0x79, 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, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x53,
- 0x0a, 0x15, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e,
- 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x6f, 0x72, 0x67,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x72, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x62,
- 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x75, 0x63,
- 0x6b, 0x65, 0x74, 0x22, 0xa7, 0x01, 0x0a, 0x0a, 0x4d, 0x61, 0x70, 0x70, 0x65, 0x72, 0x49, 0x6e,
- 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
- 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
- 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
- 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x18, 0x0a,
- 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07,
- 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65,
- 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x7a, 0x0a,
- 0x19, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61,
- 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
- 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x0e, 0x72, 0x65,
- 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6f, 0x72,
- 0x74, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x33, 0x0a, 0x0c, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x05, 0x74, 0x77, 0x69,
- 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
- 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x52, 0x05, 0x74, 0x77, 0x69, 0x6e, 0x73, 0x22, 0x9e,
- 0x01, 0x0a, 0x04, 0x54, 0x77, 0x69, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x70, 0x65,
- 0x72, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70,
- 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x0f, 0x6f,
- 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54,
- 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x0f, 0x6f, 0x62, 0x73,
- 0x65, 0x72, 0x76, 0x65, 0x64, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x12, 0x31, 0x0a, 0x08,
- 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15,
- 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f,
- 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x22,
- 0xa2, 0x01, 0x0a, 0x0c, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79,
- 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
- 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
- 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
- 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 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, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64,
- 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
+ 0x69, 0x67, 0x2e, 0x54, 0x61, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x74, 0x61, 0x67,
+ 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x1a, 0x36, 0x0a, 0x08,
+ 0x54, 0x61, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 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, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
- 0x3a, 0x02, 0x38, 0x01, 0x22, 0x1c, 0x0a, 0x1a, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x40, 0x0a, 0x15, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x06, 0x64,
- 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x31,
- 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x06, 0x64, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x22, 0x38, 0x0a, 0x16, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72,
- 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e,
- 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x46,
- 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f,
- 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x05, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x31, 0x62, 0x65,
- 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52,
- 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x45, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64,
- 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x35, 0x0a,
- 0x13, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61,
- 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
- 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x38, 0x0a, 0x18,
- 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65,
- 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x6f, 0x64, 0x65,
- 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f, 0x64,
- 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x1b, 0x0a, 0x19, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
- 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x06, 0x64, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x31, 0x62,
- 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x06, 0x64, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x46, 0x0a, 0x18, 0x55,
- 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
- 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f,
- 0x64, 0x65, 0x6c, 0x22, 0x1b, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x32, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61,
- 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
- 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3c, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63,
- 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x06, 0x64, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x31, 0x62, 0x65,
- 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x06, 0x64, 0x65, 0x76, 0x69,
- 0x63, 0x65, 0x32, 0xcc, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x61, 0x6e,
- 0x61, 0x67, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x53, 0x0a, 0x0e, 0x4d,
- 0x61, 0x70, 0x70, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1e, 0x2e,
- 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x70, 0x70, 0x65, 0x72, 0x52, 0x65,
- 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e,
- 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x70, 0x70, 0x65, 0x72, 0x52, 0x65,
- 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
- 0x12, 0x5f, 0x0a, 0x12, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
- 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
- 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61,
- 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x76, 0x31, 0x62,
- 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63,
- 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x00, 0x32, 0xe8, 0x04, 0x0a, 0x13, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x61, 0x70, 0x70,
- 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x53, 0x0a, 0x0e, 0x52, 0x65, 0x67,
- 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x1e, 0x2e, 0x76, 0x31,
- 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x76, 0x31,
- 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d,
- 0x0a, 0x0c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x1c,
- 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44,
- 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x76,
- 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a,
- 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x1c, 0x2e,
- 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x76, 0x31,
- 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69,
- 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x11,
- 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65,
- 0x6c, 0x12, 0x21, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61,
- 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43,
+ 0x3a, 0x02, 0x38, 0x01, 0x22, 0x53, 0x0a, 0x15, 0x49, 0x6e, 0x66, 0x6c, 0x75, 0x78, 0x64, 0x62,
+ 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x10, 0x0a,
+ 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12,
+ 0x10, 0x0a, 0x03, 0x6f, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x72,
+ 0x67, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x59, 0x0a, 0x0d, 0x44, 0x42, 0x4d,
+ 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x64, 0x69, 0x73, 0x12, 0x48, 0x0a, 0x11, 0x72, 0x65,
+ 0x64, 0x69, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x52, 0x65, 0x64, 0x69, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x52, 0x11, 0x72, 0x65, 0x64, 0x69, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x22, 0x77, 0x0a, 0x11, 0x52, 0x65, 0x64, 0x69, 0x73, 0x43, 0x6c, 0x69,
+ 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x64, 0x64,
+ 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x12, 0x0e, 0x0a,
+ 0x02, 0x64, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x64, 0x62, 0x12, 0x1a, 0x0a,
+ 0x08, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52,
+ 0x08, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x69, 0x6e,
+ 0x49, 0x64, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52,
+ 0x0c, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x73, 0x22, 0x65, 0x0a,
+ 0x10, 0x44, 0x42, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54, 0x44, 0x45, 0x6e, 0x67, 0x69, 0x6e,
+ 0x65, 0x12, 0x51, 0x0a, 0x14, 0x74, 0x64, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x43, 0x6c, 0x69,
+ 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x1d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x44, 0x45, 0x6e, 0x67, 0x69,
+ 0x6e, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x14,
+ 0x74, 0x64, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x22, 0x42, 0x0a, 0x14, 0x54, 0x44, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65,
+ 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04,
+ 0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72,
+ 0x12, 0x16, 0x0a, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa7, 0x01, 0x0a, 0x0a, 0x4d, 0x61, 0x70,
+ 0x70, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76,
+ 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72,
+ 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56,
+ 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05,
+ 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61,
+ 0x74, 0x65, 0x22, 0x7a, 0x0a, 0x19, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12,
+ 0x3d, 0x0a, 0x0e, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0e,
+ 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x33,
+ 0x0a, 0x0c, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23,
+ 0x0a, 0x05, 0x74, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e,
+ 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x52, 0x05, 0x74, 0x77,
+ 0x69, 0x6e, 0x73, 0x22, 0x9e, 0x01, 0x0a, 0x04, 0x54, 0x77, 0x69, 0x6e, 0x12, 0x22, 0x0a, 0x0c,
+ 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65,
+ 0x12, 0x3f, 0x0a, 0x0f, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x44, 0x65, 0x73, 0x69,
+ 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x31, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79,
+ 0x52, 0x0f, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65,
+ 0x64, 0x12, 0x31, 0x0a, 0x08, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x77,
+ 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6f,
+ 0x72, 0x74, 0x65, 0x64, 0x22, 0xa2, 0x01, 0x0a, 0x0c, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f,
+ 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x6d,
+ 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e,
+ 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x77, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70,
+ 0x65, 0x72, 0x74, 0x79, 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, 0x3b, 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,
+ 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x1c, 0x0a, 0x1a, 0x52, 0x65, 0x70,
+ 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x40, 0x0a, 0x15, 0x52, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x27, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x0f, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63,
+ 0x65, 0x52, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x38, 0x0a, 0x16, 0x52, 0x65, 0x67,
+ 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e,
+ 0x61, 0x6d, 0x65, 0x22, 0x46, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76,
+ 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x2a, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14,
+ 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d,
+ 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x45, 0x0a, 0x19, 0x43,
0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x11, 0x52, 0x65,
- 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12,
- 0x21, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
- 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d,
- 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61,
- 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x21, 0x2e,
- 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74,
- 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x12, 0x19, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65,
- 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a,
- 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69,
- 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x0c, 0x5a, 0x0a,
- 0x2e, 0x2f, 0x3b, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x33,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x64, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x0f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61,
+ 0x6d, 0x65, 0x22, 0x35, 0x0a, 0x13, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76,
+ 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64,
+ 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x52, 0x65, 0x6d,
+ 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x38, 0x0a, 0x18, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63,
+ 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a,
+ 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x1b, 0x0a, 0x19, 0x52,
+ 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x27, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0f, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
+ 0x52, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x46, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
+ 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x05,
+ 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x31,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65,
+ 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x1b, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x76,
+ 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64,
+ 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3c, 0x0a, 0x11, 0x47, 0x65, 0x74,
+ 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27,
+ 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
+ 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52,
+ 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x32, 0xcc, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x12, 0x53, 0x0a, 0x0e, 0x4d, 0x61, 0x70, 0x70, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74,
+ 0x65, 0x72, 0x12, 0x1e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x70,
+ 0x70, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x70,
+ 0x70, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x12, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44,
+ 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x22, 0x2e, 0x76, 0x31,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x23, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74,
+ 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x32, 0xe8, 0x04, 0x0a, 0x13, 0x44, 0x65, 0x76, 0x69, 0x63,
+ 0x65, 0x4d, 0x61, 0x70, 0x70, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x53,
+ 0x0a, 0x0e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
+ 0x12, 0x1e, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1f, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76,
+ 0x69, 0x63, 0x65, 0x12, 0x1c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65,
+ 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x1d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f,
+ 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69,
+ 0x63, 0x65, 0x12, 0x1c, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x00, 0x12, 0x5c, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63,
+ 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x21, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64,
+ 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
+ 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
+ 0x5c, 0x0a, 0x11, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d,
+ 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x21, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52,
+ 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f,
+ 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a,
+ 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64,
+ 0x65, 0x6c, 0x12, 0x21, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65,
+ 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x47,
+ 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x19, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65,
+ 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x00, 0x42, 0x0c, 0x5a, 0x0a, 0x2e, 0x2f, 0x3b, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62,
+ 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -2632,7 +2906,7 @@ func file_api_proto_rawDescGZIP() []byte {
return file_api_proto_rawDescData
}
-var file_api_proto_msgTypes = make([]protoimpl.MessageInfo, 42)
+var file_api_proto_msgTypes = make([]protoimpl.MessageInfo, 46)
var file_api_proto_goTypes = []interface{}{
(*MapperRegisterRequest)(nil), // 0: v1beta1.MapperRegisterRequest
(*MapperRegisterResponse)(nil), // 1: v1beta1.MapperRegisterResponse
@@ -2653,89 +2927,97 @@ var file_api_proto_goTypes = []interface{}{
(*DBMethodInfluxdb2)(nil), // 16: v1beta1.DBMethodInfluxdb2
(*Influxdb2DataConfig)(nil), // 17: v1beta1.Influxdb2DataConfig
(*Influxdb2ClientConfig)(nil), // 18: v1beta1.Influxdb2ClientConfig
- (*MapperInfo)(nil), // 19: v1beta1.MapperInfo
- (*ReportDeviceStatusRequest)(nil), // 20: v1beta1.ReportDeviceStatusRequest
- (*DeviceStatus)(nil), // 21: v1beta1.DeviceStatus
- (*Twin)(nil), // 22: v1beta1.Twin
- (*TwinProperty)(nil), // 23: v1beta1.TwinProperty
- (*ReportDeviceStatusResponse)(nil), // 24: v1beta1.ReportDeviceStatusResponse
- (*RegisterDeviceRequest)(nil), // 25: v1beta1.RegisterDeviceRequest
- (*RegisterDeviceResponse)(nil), // 26: v1beta1.RegisterDeviceResponse
- (*CreateDeviceModelRequest)(nil), // 27: v1beta1.CreateDeviceModelRequest
- (*CreateDeviceModelResponse)(nil), // 28: v1beta1.CreateDeviceModelResponse
- (*RemoveDeviceRequest)(nil), // 29: v1beta1.RemoveDeviceRequest
- (*RemoveDeviceResponse)(nil), // 30: v1beta1.RemoveDeviceResponse
- (*RemoveDeviceModelRequest)(nil), // 31: v1beta1.RemoveDeviceModelRequest
- (*RemoveDeviceModelResponse)(nil), // 32: v1beta1.RemoveDeviceModelResponse
- (*UpdateDeviceRequest)(nil), // 33: v1beta1.UpdateDeviceRequest
- (*UpdateDeviceResponse)(nil), // 34: v1beta1.UpdateDeviceResponse
- (*UpdateDeviceModelRequest)(nil), // 35: v1beta1.UpdateDeviceModelRequest
- (*UpdateDeviceModelResponse)(nil), // 36: v1beta1.UpdateDeviceModelResponse
- (*GetDeviceRequest)(nil), // 37: v1beta1.GetDeviceRequest
- (*GetDeviceResponse)(nil), // 38: v1beta1.GetDeviceResponse
- nil, // 39: v1beta1.CustomizedValue.DataEntry
- nil, // 40: v1beta1.Influxdb2DataConfig.TagEntry
- nil, // 41: v1beta1.TwinProperty.MetadataEntry
- (*anypb.Any)(nil), // 42: google.protobuf.Any
+ (*DBMethodRedis)(nil), // 19: v1beta1.DBMethodRedis
+ (*RedisClientConfig)(nil), // 20: v1beta1.RedisClientConfig
+ (*DBMethodTDEngine)(nil), // 21: v1beta1.DBMethodTDEngine
+ (*TDEngineClientConfig)(nil), // 22: v1beta1.TDEngineClientConfig
+ (*MapperInfo)(nil), // 23: v1beta1.MapperInfo
+ (*ReportDeviceStatusRequest)(nil), // 24: v1beta1.ReportDeviceStatusRequest
+ (*DeviceStatus)(nil), // 25: v1beta1.DeviceStatus
+ (*Twin)(nil), // 26: v1beta1.Twin
+ (*TwinProperty)(nil), // 27: v1beta1.TwinProperty
+ (*ReportDeviceStatusResponse)(nil), // 28: v1beta1.ReportDeviceStatusResponse
+ (*RegisterDeviceRequest)(nil), // 29: v1beta1.RegisterDeviceRequest
+ (*RegisterDeviceResponse)(nil), // 30: v1beta1.RegisterDeviceResponse
+ (*CreateDeviceModelRequest)(nil), // 31: v1beta1.CreateDeviceModelRequest
+ (*CreateDeviceModelResponse)(nil), // 32: v1beta1.CreateDeviceModelResponse
+ (*RemoveDeviceRequest)(nil), // 33: v1beta1.RemoveDeviceRequest
+ (*RemoveDeviceResponse)(nil), // 34: v1beta1.RemoveDeviceResponse
+ (*RemoveDeviceModelRequest)(nil), // 35: v1beta1.RemoveDeviceModelRequest
+ (*RemoveDeviceModelResponse)(nil), // 36: v1beta1.RemoveDeviceModelResponse
+ (*UpdateDeviceRequest)(nil), // 37: v1beta1.UpdateDeviceRequest
+ (*UpdateDeviceResponse)(nil), // 38: v1beta1.UpdateDeviceResponse
+ (*UpdateDeviceModelRequest)(nil), // 39: v1beta1.UpdateDeviceModelRequest
+ (*UpdateDeviceModelResponse)(nil), // 40: v1beta1.UpdateDeviceModelResponse
+ (*GetDeviceRequest)(nil), // 41: v1beta1.GetDeviceRequest
+ (*GetDeviceResponse)(nil), // 42: v1beta1.GetDeviceResponse
+ nil, // 43: v1beta1.CustomizedValue.DataEntry
+ nil, // 44: v1beta1.Influxdb2DataConfig.TagEntry
+ nil, // 45: v1beta1.TwinProperty.MetadataEntry
+ (*anypb.Any)(nil), // 46: google.protobuf.Any
}
var file_api_proto_depIdxs = []int32{
- 19, // 0: v1beta1.MapperRegisterRequest.mapper:type_name -> v1beta1.MapperInfo
+ 23, // 0: v1beta1.MapperRegisterRequest.mapper:type_name -> v1beta1.MapperInfo
2, // 1: v1beta1.MapperRegisterResponse.modelList:type_name -> v1beta1.DeviceModel
6, // 2: v1beta1.MapperRegisterResponse.deviceList:type_name -> v1beta1.Device
3, // 3: v1beta1.DeviceModel.spec:type_name -> v1beta1.DeviceModelSpec
4, // 4: v1beta1.DeviceModelSpec.properties:type_name -> v1beta1.ModelProperty
5, // 5: v1beta1.DeviceModelSpec.commands:type_name -> v1beta1.DeviceCommand
7, // 6: v1beta1.Device.spec:type_name -> v1beta1.DeviceSpec
- 21, // 7: v1beta1.Device.status:type_name -> v1beta1.DeviceStatus
+ 25, // 7: v1beta1.Device.status:type_name -> v1beta1.DeviceStatus
9, // 8: v1beta1.DeviceSpec.protocol:type_name -> v1beta1.ProtocolConfig
8, // 9: v1beta1.DeviceSpec.properties:type_name -> v1beta1.DeviceProperty
- 23, // 10: v1beta1.DeviceProperty.desired:type_name -> v1beta1.TwinProperty
+ 27, // 10: v1beta1.DeviceProperty.desired:type_name -> v1beta1.TwinProperty
10, // 11: v1beta1.DeviceProperty.visitors:type_name -> v1beta1.VisitorConfig
12, // 12: v1beta1.DeviceProperty.pushMethod:type_name -> v1beta1.PushMethod
11, // 13: v1beta1.ProtocolConfig.configData:type_name -> v1beta1.CustomizedValue
11, // 14: v1beta1.VisitorConfig.configData:type_name -> v1beta1.CustomizedValue
- 39, // 15: v1beta1.CustomizedValue.data:type_name -> v1beta1.CustomizedValue.DataEntry
+ 43, // 15: v1beta1.CustomizedValue.data:type_name -> v1beta1.CustomizedValue.DataEntry
13, // 16: v1beta1.PushMethod.http:type_name -> v1beta1.PushMethodHTTP
14, // 17: v1beta1.PushMethod.mqtt:type_name -> v1beta1.PushMethodMQTT
15, // 18: v1beta1.PushMethod.dbMethod:type_name -> v1beta1.DBMethod
16, // 19: v1beta1.DBMethod.influxdb2:type_name -> v1beta1.DBMethodInfluxdb2
- 18, // 20: v1beta1.DBMethodInfluxdb2.influxdb2ClientConfig:type_name -> v1beta1.Influxdb2ClientConfig
- 17, // 21: v1beta1.DBMethodInfluxdb2.influxdb2DataConfig:type_name -> v1beta1.Influxdb2DataConfig
- 40, // 22: v1beta1.Influxdb2DataConfig.tag:type_name -> v1beta1.Influxdb2DataConfig.TagEntry
- 21, // 23: v1beta1.ReportDeviceStatusRequest.reportedDevice:type_name -> v1beta1.DeviceStatus
- 22, // 24: v1beta1.DeviceStatus.twins:type_name -> v1beta1.Twin
- 23, // 25: v1beta1.Twin.observedDesired:type_name -> v1beta1.TwinProperty
- 23, // 26: v1beta1.Twin.reported:type_name -> v1beta1.TwinProperty
- 41, // 27: v1beta1.TwinProperty.metadata:type_name -> v1beta1.TwinProperty.MetadataEntry
- 6, // 28: v1beta1.RegisterDeviceRequest.device:type_name -> v1beta1.Device
- 2, // 29: v1beta1.CreateDeviceModelRequest.model:type_name -> v1beta1.DeviceModel
- 6, // 30: v1beta1.UpdateDeviceRequest.device:type_name -> v1beta1.Device
- 2, // 31: v1beta1.UpdateDeviceModelRequest.model:type_name -> v1beta1.DeviceModel
- 6, // 32: v1beta1.GetDeviceResponse.device:type_name -> v1beta1.Device
- 42, // 33: v1beta1.CustomizedValue.DataEntry.value:type_name -> google.protobuf.Any
- 0, // 34: v1beta1.DeviceManagerService.MapperRegister:input_type -> v1beta1.MapperRegisterRequest
- 20, // 35: v1beta1.DeviceManagerService.ReportDeviceStatus:input_type -> v1beta1.ReportDeviceStatusRequest
- 25, // 36: v1beta1.DeviceMapperService.RegisterDevice:input_type -> v1beta1.RegisterDeviceRequest
- 29, // 37: v1beta1.DeviceMapperService.RemoveDevice:input_type -> v1beta1.RemoveDeviceRequest
- 33, // 38: v1beta1.DeviceMapperService.UpdateDevice:input_type -> v1beta1.UpdateDeviceRequest
- 27, // 39: v1beta1.DeviceMapperService.CreateDeviceModel:input_type -> v1beta1.CreateDeviceModelRequest
- 31, // 40: v1beta1.DeviceMapperService.RemoveDeviceModel:input_type -> v1beta1.RemoveDeviceModelRequest
- 35, // 41: v1beta1.DeviceMapperService.UpdateDeviceModel:input_type -> v1beta1.UpdateDeviceModelRequest
- 37, // 42: v1beta1.DeviceMapperService.GetDevice:input_type -> v1beta1.GetDeviceRequest
- 1, // 43: v1beta1.DeviceManagerService.MapperRegister:output_type -> v1beta1.MapperRegisterResponse
- 24, // 44: v1beta1.DeviceManagerService.ReportDeviceStatus:output_type -> v1beta1.ReportDeviceStatusResponse
- 26, // 45: v1beta1.DeviceMapperService.RegisterDevice:output_type -> v1beta1.RegisterDeviceResponse
- 30, // 46: v1beta1.DeviceMapperService.RemoveDevice:output_type -> v1beta1.RemoveDeviceResponse
- 34, // 47: v1beta1.DeviceMapperService.UpdateDevice:output_type -> v1beta1.UpdateDeviceResponse
- 28, // 48: v1beta1.DeviceMapperService.CreateDeviceModel:output_type -> v1beta1.CreateDeviceModelResponse
- 32, // 49: v1beta1.DeviceMapperService.RemoveDeviceModel:output_type -> v1beta1.RemoveDeviceModelResponse
- 36, // 50: v1beta1.DeviceMapperService.UpdateDeviceModel:output_type -> v1beta1.UpdateDeviceModelResponse
- 38, // 51: v1beta1.DeviceMapperService.GetDevice:output_type -> v1beta1.GetDeviceResponse
- 43, // [43:52] is the sub-list for method output_type
- 34, // [34:43] is the sub-list for method input_type
- 34, // [34:34] is the sub-list for extension type_name
- 34, // [34:34] is the sub-list for extension extendee
- 0, // [0:34] is the sub-list for field type_name
+ 19, // 20: v1beta1.DBMethod.redis:type_name -> v1beta1.DBMethodRedis
+ 21, // 21: v1beta1.DBMethod.tdengine:type_name -> v1beta1.DBMethodTDEngine
+ 18, // 22: v1beta1.DBMethodInfluxdb2.influxdb2ClientConfig:type_name -> v1beta1.Influxdb2ClientConfig
+ 17, // 23: v1beta1.DBMethodInfluxdb2.influxdb2DataConfig:type_name -> v1beta1.Influxdb2DataConfig
+ 44, // 24: v1beta1.Influxdb2DataConfig.tag:type_name -> v1beta1.Influxdb2DataConfig.TagEntry
+ 20, // 25: v1beta1.DBMethodRedis.redisClientConfig:type_name -> v1beta1.RedisClientConfig
+ 22, // 26: v1beta1.DBMethodTDEngine.tdEngineClientConfig:type_name -> v1beta1.TDEngineClientConfig
+ 25, // 27: v1beta1.ReportDeviceStatusRequest.reportedDevice:type_name -> v1beta1.DeviceStatus
+ 26, // 28: v1beta1.DeviceStatus.twins:type_name -> v1beta1.Twin
+ 27, // 29: v1beta1.Twin.observedDesired:type_name -> v1beta1.TwinProperty
+ 27, // 30: v1beta1.Twin.reported:type_name -> v1beta1.TwinProperty
+ 45, // 31: v1beta1.TwinProperty.metadata:type_name -> v1beta1.TwinProperty.MetadataEntry
+ 6, // 32: v1beta1.RegisterDeviceRequest.device:type_name -> v1beta1.Device
+ 2, // 33: v1beta1.CreateDeviceModelRequest.model:type_name -> v1beta1.DeviceModel
+ 6, // 34: v1beta1.UpdateDeviceRequest.device:type_name -> v1beta1.Device
+ 2, // 35: v1beta1.UpdateDeviceModelRequest.model:type_name -> v1beta1.DeviceModel
+ 6, // 36: v1beta1.GetDeviceResponse.device:type_name -> v1beta1.Device
+ 46, // 37: v1beta1.CustomizedValue.DataEntry.value:type_name -> google.protobuf.Any
+ 0, // 38: v1beta1.DeviceManagerService.MapperRegister:input_type -> v1beta1.MapperRegisterRequest
+ 24, // 39: v1beta1.DeviceManagerService.ReportDeviceStatus:input_type -> v1beta1.ReportDeviceStatusRequest
+ 29, // 40: v1beta1.DeviceMapperService.RegisterDevice:input_type -> v1beta1.RegisterDeviceRequest
+ 33, // 41: v1beta1.DeviceMapperService.RemoveDevice:input_type -> v1beta1.RemoveDeviceRequest
+ 37, // 42: v1beta1.DeviceMapperService.UpdateDevice:input_type -> v1beta1.UpdateDeviceRequest
+ 31, // 43: v1beta1.DeviceMapperService.CreateDeviceModel:input_type -> v1beta1.CreateDeviceModelRequest
+ 35, // 44: v1beta1.DeviceMapperService.RemoveDeviceModel:input_type -> v1beta1.RemoveDeviceModelRequest
+ 39, // 45: v1beta1.DeviceMapperService.UpdateDeviceModel:input_type -> v1beta1.UpdateDeviceModelRequest
+ 41, // 46: v1beta1.DeviceMapperService.GetDevice:input_type -> v1beta1.GetDeviceRequest
+ 1, // 47: v1beta1.DeviceManagerService.MapperRegister:output_type -> v1beta1.MapperRegisterResponse
+ 28, // 48: v1beta1.DeviceManagerService.ReportDeviceStatus:output_type -> v1beta1.ReportDeviceStatusResponse
+ 30, // 49: v1beta1.DeviceMapperService.RegisterDevice:output_type -> v1beta1.RegisterDeviceResponse
+ 34, // 50: v1beta1.DeviceMapperService.RemoveDevice:output_type -> v1beta1.RemoveDeviceResponse
+ 38, // 51: v1beta1.DeviceMapperService.UpdateDevice:output_type -> v1beta1.UpdateDeviceResponse
+ 32, // 52: v1beta1.DeviceMapperService.CreateDeviceModel:output_type -> v1beta1.CreateDeviceModelResponse
+ 36, // 53: v1beta1.DeviceMapperService.RemoveDeviceModel:output_type -> v1beta1.RemoveDeviceModelResponse
+ 40, // 54: v1beta1.DeviceMapperService.UpdateDeviceModel:output_type -> v1beta1.UpdateDeviceModelResponse
+ 42, // 55: v1beta1.DeviceMapperService.GetDevice:output_type -> v1beta1.GetDeviceResponse
+ 47, // [47:56] is the sub-list for method output_type
+ 38, // [38:47] is the sub-list for method input_type
+ 38, // [38:38] is the sub-list for extension type_name
+ 38, // [38:38] is the sub-list for extension extendee
+ 0, // [0:38] is the sub-list for field type_name
}
func init() { file_api_proto_init() }
@@ -2973,7 +3255,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*MapperInfo); i {
+ switch v := v.(*DBMethodRedis); i {
case 0:
return &v.state
case 1:
@@ -2985,7 +3267,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ReportDeviceStatusRequest); i {
+ switch v := v.(*RedisClientConfig); i {
case 0:
return &v.state
case 1:
@@ -2997,7 +3279,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeviceStatus); i {
+ switch v := v.(*DBMethodTDEngine); i {
case 0:
return &v.state
case 1:
@@ -3009,7 +3291,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Twin); i {
+ switch v := v.(*TDEngineClientConfig); i {
case 0:
return &v.state
case 1:
@@ -3021,7 +3303,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*TwinProperty); i {
+ switch v := v.(*MapperInfo); i {
case 0:
return &v.state
case 1:
@@ -3033,7 +3315,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ReportDeviceStatusResponse); i {
+ switch v := v.(*ReportDeviceStatusRequest); i {
case 0:
return &v.state
case 1:
@@ -3045,7 +3327,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RegisterDeviceRequest); i {
+ switch v := v.(*DeviceStatus); i {
case 0:
return &v.state
case 1:
@@ -3057,7 +3339,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RegisterDeviceResponse); i {
+ switch v := v.(*Twin); i {
case 0:
return &v.state
case 1:
@@ -3069,7 +3351,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateDeviceModelRequest); i {
+ switch v := v.(*TwinProperty); i {
case 0:
return &v.state
case 1:
@@ -3081,7 +3363,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateDeviceModelResponse); i {
+ switch v := v.(*ReportDeviceStatusResponse); i {
case 0:
return &v.state
case 1:
@@ -3093,7 +3375,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RemoveDeviceRequest); i {
+ switch v := v.(*RegisterDeviceRequest); i {
case 0:
return &v.state
case 1:
@@ -3105,7 +3387,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RemoveDeviceResponse); i {
+ switch v := v.(*RegisterDeviceResponse); i {
case 0:
return &v.state
case 1:
@@ -3117,7 +3399,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RemoveDeviceModelRequest); i {
+ switch v := v.(*CreateDeviceModelRequest); i {
case 0:
return &v.state
case 1:
@@ -3129,7 +3411,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RemoveDeviceModelResponse); i {
+ switch v := v.(*CreateDeviceModelResponse); i {
case 0:
return &v.state
case 1:
@@ -3141,7 +3423,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateDeviceRequest); i {
+ switch v := v.(*RemoveDeviceRequest); i {
case 0:
return &v.state
case 1:
@@ -3153,7 +3435,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateDeviceResponse); i {
+ switch v := v.(*RemoveDeviceResponse); i {
case 0:
return &v.state
case 1:
@@ -3165,7 +3447,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateDeviceModelRequest); i {
+ switch v := v.(*RemoveDeviceModelRequest); i {
case 0:
return &v.state
case 1:
@@ -3177,7 +3459,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateDeviceModelResponse); i {
+ switch v := v.(*RemoveDeviceModelResponse); i {
case 0:
return &v.state
case 1:
@@ -3189,7 +3471,7 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetDeviceRequest); i {
+ switch v := v.(*UpdateDeviceRequest); i {
case 0:
return &v.state
case 1:
@@ -3201,6 +3483,54 @@ func file_api_proto_init() {
}
}
file_api_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateDeviceResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_api_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateDeviceModelRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_api_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateDeviceModelResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_api_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetDeviceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_api_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetDeviceResponse); i {
case 0:
return &v.state
@@ -3219,7 +3549,7 @@ func file_api_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_api_proto_rawDesc,
NumEnums: 0,
- NumMessages: 42,
+ NumMessages: 46,
NumExtensions: 0,
NumServices: 2,
},
diff --git a/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api.proto b/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api.proto
index a6f948599..ae112e773 100644
--- a/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api.proto
+++ b/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api.proto
@@ -245,6 +245,8 @@ message PushMethodMQTT {
message DBMethod{
// the config of database .
DBMethodInfluxdb2 influxdb2 = 1;
+ DBMethodRedis redis = 2;
+ DBMethodTDEngine tdengine = 3;
}
message DBMethodInfluxdb2{
@@ -269,6 +271,34 @@ message Influxdb2ClientConfig{
string bucket = 3;
}
+message DBMethodRedis{
+ // data config when push data to redis
+ RedisClientConfig redisClientConfig = 1;
+}
+
+message RedisClientConfig{
+ // redis address
+ string addr = 1;
+ // number of redis db
+ int32 db = 2;
+ // number of redis poolsize
+ int32 poolsize = 3;
+ // number of redis minidleconns
+ int32 minIdleConns =4;
+}
+
+message DBMethodTDEngine{
+ // data config when push data to tdengine
+ TDEngineClientConfig tdEngineClientConfig = 1;
+}
+
+message TDEngineClientConfig{
+ // tdengine address,like 127.0.0.1:6041
+ string addr = 1;
+ // tdengine database name
+ string dbname = 2;
+}
+
// MapperInfo is the information of mapper.
message MapperInfo {
// name of the mapper.
diff --git a/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api_grpc.pb.go b/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api_grpc.pb.go
index 092fdb34f..8d37c66a9 100644
--- a/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api_grpc.pb.go
+++ b/staging/src/github.com/kubeedge/mapper-framework/pkg/dmi-api/api_grpc.pb.go
@@ -18,7 +18,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
-// - protoc v3.19.4
+// - protoc v3.20.3
// source: api.proto
package v1beta1
diff --git a/staging/src/github.com/kubeedge/mapper-framework/pkg/util/parse/grpc.go b/staging/src/github.com/kubeedge/mapper-framework/pkg/util/parse/grpc.go
index 450e3730b..cd5aa44b3 100644
--- a/staging/src/github.com/kubeedge/mapper-framework/pkg/util/parse/grpc.go
+++ b/staging/src/github.com/kubeedge/mapper-framework/pkg/util/parse/grpc.go
@@ -35,6 +35,10 @@ func getDBMethodFromGrpc(visitor *dmiapi.DeviceProperty) (string, error) {
// TODO add more dbMethod
if visitor.PushMethod.DBMethod.Influxdb2 != nil {
return "influx", nil
+ } else if visitor.PushMethod.DBMethod.Redis != nil {
+ return "redis", nil
+ } else if visitor.PushMethod.DBMethod.Tdengine != nil {
+ return "tdengine", nil
}
return "", errors.New("can not parse dbMethod")
}
@@ -151,6 +155,24 @@ func buildPropertiesFromGrpc(device *dmiapi.Device) []common.DeviceProperty {
Influxdb2ClientConfig: clientconfig,
Influxdb2DataConfig: dataconfig,
}
+ case "redis":
+ clientConfig, err := json.Marshal(pptv.PushMethod.DBMethod.Redis.RedisClientConfig)
+ if err != nil {
+ klog.Errorf("err: %+v", err)
+ return nil
+ }
+ dbconfig = common.DBConfig{
+ RedisClientConfig: clientConfig,
+ }
+ case "tdengine":
+ clientConfig, err := json.Marshal(pptv.PushMethod.DBMethod.Tdengine.TdEngineClientConfig)
+ if err != nil {
+ klog.Errorf("err: %+v", err)
+ return nil
+ }
+ dbconfig = common.DBConfig{
+ TDEngineClientConfig: clientConfig,
+ }
}
}
// get pushMethod filed by grpc device instance