Compare commits

...
25 Commits
Author SHA1 Message Date
刘祥超 a6830af28e 调整统计相关配置默认值 2023-03-12 10:56:53 +08:00
刘祥超 65973c65ac 上传统计数据时使用ID取代名称 2023-03-12 10:21:14 +08:00
刘祥超 01890aa83d 在集群服务设置中增加服务统计相关选项 2023-03-11 10:42:59 +08:00
刘祥超 34f33a0979 WAF cc2模板中增加启用指纹选项 2023-03-10 15:16:29 +08:00
刘祥超 dd3b6b0fe8 优化旧cc统计注释说明 2023-03-10 10:16:44 +08:00
刘祥超 4c7618f623 提供删除运行日志的接口 2023-03-09 16:20:24 +08:00
刘祥超 c73a05eceb 增加CC防护相关API定义、配置 2023-03-09 12:10:31 +08:00
刘祥超 f4a690a5c3 优化URL匹配方法 2023-03-07 17:21:38 +08:00
刘祥超 866697ddd0 集群服务设置增加“记录找不到网站日志”选项 2023-03-07 10:30:44 +08:00
刘祥超 22b945ec40 5秒盾支持例外URL和限制URL 2023-03-06 21:49:11 +08:00
刘祥超 d835b36660 远程升级API节点(部分实现) 2023-03-04 21:22:17 +08:00
刘祥超 b375a40340 智能DNS增加记录权重 2023-03-02 20:06:54 +08:00
刘祥超 a068ce9a4f 对边缘节点配置缓存进行加密,提升安全性 2023-03-02 10:28:15 +08:00
刘祥超 4379acbeea WAF拦截动作可以设置最大封禁时间,从而实现封禁时间随机 2023-03-01 18:59:47 +08:00
刘祥超 a086496d7c WAF支持忽略全局WAF规则 2023-03-01 16:52:30 +08:00
刘祥超 7d80c58871 节点IP地址可以设置专属集群 2023-03-01 11:39:01 +08:00
刘祥超 0933ae903b 实现峰值带宽和平均带宽两种带宽算法 2023-02-27 10:47:31 +08:00
刘祥超 727ac23e17 增加多个配置项 2023-02-23 21:28:42 +08:00
刘祥超 99acf99a48 验证相关和一些注释 2023-02-22 19:46:50 +08:00
刘祥超 23db1c4b77 增加高防相应对象 2023-02-22 17:36:41 +08:00
刘祥超 d03775957e 增加${requestPathLowerExtension}变量 2023-02-10 10:53:05 +08:00
刘祥超 ec166af0c3 修复客户端CA证书设置不起作用的Bug 2023-02-09 11:31:33 +08:00
刘祥超 be29ba72a0 增加管理员和用户登录SESSION API 2023-02-04 15:17:27 +08:00
刘祥超 ce72dcf4dc 增加生成文档的测试用例 2023-01-13 19:36:10 +08:00
刘祥超 c024049778 优化域名匹配,现在 example.com:* 可以匹配 example.com 2023-01-10 10:03:43 +08:00
85 changed files with 14016 additions and 1175 deletions
+1025 -25
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -64,7 +64,7 @@ func MatchDomain(pattern string, domain string) (isMatched bool) {
var portIndex = strings.LastIndex(patternPiece, ":*") var portIndex = strings.LastIndex(patternPiece, ":*")
if portIndex >= 0 { if portIndex >= 0 {
var prefix = patternPiece[:portIndex] var prefix = patternPiece[:portIndex]
if strings.HasPrefix(domainPieces[index], prefix+":") { if strings.HasPrefix(domainPieces[index], prefix+":") || domainPieces[index] == prefix {
continue continue
} }
} }
+8
View File
@@ -94,6 +94,14 @@ func TestMatchDomain(t *testing.T) {
var ok = MatchDomains([]string{"*.example.com:8001"}, "a.example.com:8001") var ok = MatchDomains([]string{"*.example.com:8001"}, "a.example.com:8001")
a.IsTrue(ok) a.IsTrue(ok)
} }
{
var ok = MatchDomains([]string{"a.example.com:*"}, "a.example.com:8001")
a.IsTrue(ok)
}
{
var ok = MatchDomains([]string{"a.example.com:*"}, "a.example.com")
a.IsTrue(ok)
}
{ {
var ok = MatchDomains([]string{"*.example.com:*"}, "a.example.com:8001") var ok = MatchDomains([]string{"*.example.com:*"}, "a.example.com:8001")
a.IsTrue(ok) a.IsTrue(ok)
+49 -5
View File
@@ -1,10 +1,13 @@
package nodeconfigs package nodeconfigs
import ( import (
"bytes"
"crypto/sha256" "crypto/sha256"
"encoding/base64"
"encoding/json" "encoding/json"
"errors" "errors"
"fmt" "fmt"
"github.com/TeaOSLab/EdgeCommon/pkg/nodeutils"
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs"
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/ddosconfigs" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/ddosconfigs"
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs"
@@ -14,6 +17,7 @@ import (
"os" "os"
"reflect" "reflect"
"strconv" "strconv"
"strings"
) )
var sharedNodeConfig *NodeConfig = nil var sharedNodeConfig *NodeConfig = nil
@@ -122,17 +126,50 @@ func SharedNodeConfig() (*NodeConfig, error) {
return sharedNodeConfig, nil return sharedNodeConfig, nil
} }
data, err := os.ReadFile(Tea.ConfigFile("node.json")) // 从本地缓存读取
var configFile = Tea.ConfigFile("node.json")
var readCacheOk = false
defer func() {
if !readCacheOk {
_ = os.Remove(configFile)
}
}()
data, err := os.ReadFile(configFile)
if err != nil {
return &NodeConfig{}, err
}
encodedNodeInfo, encodedJSONData, found := bytes.Cut(data, []byte("\n"))
if !found {
// 删除缓存文件
return &NodeConfig{}, errors.New("node.json: invalid data format")
}
encodedNodeInfoData, err := base64.StdEncoding.DecodeString(string(encodedNodeInfo))
if err != nil {
// 删除缓存文件
return &NodeConfig{}, err
}
nodeUniqueId, nodeSecret, found := strings.Cut(string(encodedNodeInfoData), "|")
if !found {
// 删除缓存文件
return &NodeConfig{}, errors.New("node.json: node info: invalid data format")
}
jsonData, err := nodeutils.DecryptData(nodeUniqueId, nodeSecret, string(encodedJSONData))
if err != nil { if err != nil {
return &NodeConfig{}, err return &NodeConfig{}, err
} }
var config = &NodeConfig{} var config = &NodeConfig{}
err = json.Unmarshal(data, &config) err = json.Unmarshal(jsonData, &config)
if err != nil { if err != nil {
return &NodeConfig{}, err return &NodeConfig{}, err
} }
readCacheOk = true
sharedNodeConfig = config sharedNodeConfig = config
return config, nil return config, nil
} }
@@ -397,7 +434,7 @@ func (this *NodeConfig) RemoveServer(serverId int64) {
// AvailableGroups 根据网络地址和协议分组 // AvailableGroups 根据网络地址和协议分组
func (this *NodeConfig) AvailableGroups() []*serverconfigs.ServerAddressGroup { func (this *NodeConfig) AvailableGroups() []*serverconfigs.ServerAddressGroup {
groupMapping := map[string]*serverconfigs.ServerAddressGroup{} // protocol://addr => Server Group var groupMapping = map[string]*serverconfigs.ServerAddressGroup{} // protocol://addr => Server Group
for _, server := range this.Servers { for _, server := range this.Servers {
if !server.IsOk() || !server.IsOn { if !server.IsOk() || !server.IsOn {
continue continue
@@ -413,7 +450,7 @@ func (this *NodeConfig) AvailableGroups() []*serverconfigs.ServerAddressGroup {
groupMapping[addr] = group groupMapping[addr] = group
} }
} }
result := []*serverconfigs.ServerAddressGroup{} var result = []*serverconfigs.ServerAddressGroup{}
for _, group := range groupMapping { for _, group := range groupMapping {
result = append(result, group) result = append(result, group)
} }
@@ -435,7 +472,14 @@ func (this *NodeConfig) Save() error {
return err return err
} }
return os.WriteFile(Tea.ConfigFile("node.json"), data, 0777) var headerData = []byte(base64.StdEncoding.EncodeToString([]byte(this.NodeId+"|"+this.Secret)) + "\n")
encodedData, err := nodeutils.EncryptData(this.NodeId, this.Secret, data)
if err != nil {
return err
}
return os.WriteFile(Tea.ConfigFile("node.json"), append(headerData, encodedData...), 0777)
} }
// PaddedId 获取填充后的ID // PaddedId 获取填充后的ID
+43 -4
View File
@@ -10,8 +10,8 @@ import (
"time" "time"
) )
// EncryptData 加密 // EncryptMap 加密
func EncryptData(nodeUniqueId string, nodeSecret string, data maps.Map, timeout int32) (string, error) { func EncryptMap(nodeUniqueId string, nodeSecret string, data maps.Map, timeout int32) (string, error) {
if data == nil { if data == nil {
data = maps.Map{} data = maps.Map{}
} }
@@ -42,8 +42,8 @@ func EncryptData(nodeUniqueId string, nodeSecret string, data maps.Map, timeout
return base64.StdEncoding.EncodeToString(result), nil return base64.StdEncoding.EncodeToString(result), nil
} }
// DecryptData 解密 // DecryptMap 解密
func DecryptData(nodeUniqueId string, nodeSecret string, encodedString string) (maps.Map, error) { func DecryptMap(nodeUniqueId string, nodeSecret string, encodedString string) (maps.Map, error) {
var method = &AES256CFBMethod{} var method = &AES256CFBMethod{}
err := method.Init([]byte(nodeUniqueId), []byte(nodeSecret)) err := method.Init([]byte(nodeUniqueId), []byte(nodeSecret))
if err != nil { if err != nil {
@@ -73,3 +73,42 @@ func DecryptData(nodeUniqueId string, nodeSecret string, encodedString string) (
return result.GetMap("data"), nil return result.GetMap("data"), nil
} }
// EncryptData 加密
func EncryptData(nodeUniqueId string, nodeSecret string, data []byte) (string, error) {
if len(data) == 0 {
return "", nil
}
var method = &AES256CFBMethod{}
err := method.Init([]byte(nodeUniqueId), []byte(nodeSecret))
if err != nil {
return "", err
}
result, err := method.Encrypt(data)
if err != nil {
return "", err
}
return base64.StdEncoding.EncodeToString(result), nil
}
// DecryptData 解密
func DecryptData(nodeUniqueId string, nodeSecret string, encodedString string) ([]byte, error) {
if len(encodedString) == 0 {
return nil, nil
}
var method = &AES256CFBMethod{}
err := method.Init([]byte(nodeUniqueId), []byte(nodeSecret))
if err != nil {
return nil, err
}
encodedData, err := base64.StdEncoding.DecodeString(encodedString)
if err != nil {
return nil, errors.New("base64 decode failed: " + err.Error())
}
return method.Decrypt(encodedData)
}
+18 -4
View File
@@ -7,8 +7,8 @@ import (
"testing" "testing"
) )
func TestEncryptData(t *testing.T) { func TestEncryptMap(t *testing.T) {
e, err := EncryptData("a", "b", maps.Map{ e, err := EncryptMap("a", "b", maps.Map{
"c": 1, "c": 1,
}, 5) }, 5)
if err != nil { if err != nil {
@@ -16,16 +16,30 @@ func TestEncryptData(t *testing.T) {
} }
t.Log("e:", e) t.Log("e:", e)
s, err := DecryptData("a", "b", e) s, err := DecryptMap("a", "b", e)
if err != nil { if err != nil {
t.Fatal(err) t.Fatal(err)
} }
t.Log("s:", s) t.Log("s:", s)
} }
func TestEncryptData(t *testing.T) {
encoded, err := EncryptData("a", "b", []byte("Hello, World"))
if err != nil {
t.Fatal(err)
}
t.Log("encoded:", encoded)
source, err := DecryptData("a", "b", encoded)
if err != nil {
t.Fatal(err)
}
t.Log("source:", string(source))
}
func BenchmarkEncryptData(b *testing.B) { func BenchmarkEncryptData(b *testing.B) {
for i := 0; i < b.N; i++ { for i := 0; i < b.N; i++ {
_, _ = EncryptData("a", "b", maps.Map{ _, _ = EncryptMap("a", "b", maps.Map{
"c": 1, "c": 1,
}, 5) }, 5)
} }
+1 -1
View File
@@ -69,7 +69,7 @@
{ {
"type": "url-extension", "type": "url-extension",
"isRequest": true, "isRequest": true,
"param": "${requestPathExtension}", "param": "${requestPathLowerExtension}",
"operator": "in", "operator": "in",
"value": "[\".css\",\".png\",\".js\",\".woff2\"]", "value": "[\".css\",\".png\",\".js\",\".woff2\"]",
"isReverse": false, "isReverse": false,
+1 -1
View File
@@ -71,7 +71,7 @@
{ {
"type": "url-extension", "type": "url-extension",
"isRequest": true, "isRequest": true,
"param": "${requestPathExtension}", "param": "${requestPathLowerExtension}",
"operator": "in", "operator": "in",
"value": "[\".css\",\".png\",\".js\",\".woff2\"]", "value": "[\".css\",\".png\",\".js\",\".woff2\"]",
"isReverse": false, "isReverse": false,
+176
View File
@@ -0,0 +1,176 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.19.4
// source: models/model_ad_network.proto
package pb
import (
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// 高防线路
type ADNetwork struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
IsOn bool `protobuf:"varint,2,opt,name=isOn,proto3" json:"isOn,omitempty"`
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"`
}
func (x *ADNetwork) Reset() {
*x = ADNetwork{}
if protoimpl.UnsafeEnabled {
mi := &file_models_model_ad_network_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ADNetwork) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ADNetwork) ProtoMessage() {}
func (x *ADNetwork) ProtoReflect() protoreflect.Message {
mi := &file_models_model_ad_network_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ADNetwork.ProtoReflect.Descriptor instead.
func (*ADNetwork) Descriptor() ([]byte, []int) {
return file_models_model_ad_network_proto_rawDescGZIP(), []int{0}
}
func (x *ADNetwork) GetId() int64 {
if x != nil {
return x.Id
}
return 0
}
func (x *ADNetwork) GetIsOn() bool {
if x != nil {
return x.IsOn
}
return false
}
func (x *ADNetwork) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ADNetwork) GetDescription() string {
if x != nil {
return x.Description
}
return ""
}
var File_models_model_ad_network_proto protoreflect.FileDescriptor
var file_models_model_ad_network_proto_rawDesc = []byte{
0x0a, 0x1d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x61,
0x64, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
0x02, 0x70, 0x62, 0x22, 0x65, 0x0a, 0x09, 0x41, 0x44, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64,
0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04,
0x69, 0x73, 0x4f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f,
0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_models_model_ad_network_proto_rawDescOnce sync.Once
file_models_model_ad_network_proto_rawDescData = file_models_model_ad_network_proto_rawDesc
)
func file_models_model_ad_network_proto_rawDescGZIP() []byte {
file_models_model_ad_network_proto_rawDescOnce.Do(func() {
file_models_model_ad_network_proto_rawDescData = protoimpl.X.CompressGZIP(file_models_model_ad_network_proto_rawDescData)
})
return file_models_model_ad_network_proto_rawDescData
}
var file_models_model_ad_network_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_models_model_ad_network_proto_goTypes = []interface{}{
(*ADNetwork)(nil), // 0: pb.ADNetwork
}
var file_models_model_ad_network_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
0, // [0:0] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_models_model_ad_network_proto_init() }
func file_models_model_ad_network_proto_init() {
if File_models_model_ad_network_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_models_model_ad_network_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ADNetwork); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_models_model_ad_network_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_models_model_ad_network_proto_goTypes,
DependencyIndexes: file_models_model_ad_network_proto_depIdxs,
MessageInfos: file_models_model_ad_network_proto_msgTypes,
}.Build()
File_models_model_ad_network_proto = out.File
file_models_model_ad_network_proto_rawDesc = nil
file_models_model_ad_network_proto_goTypes = nil
file_models_model_ad_network_proto_depIdxs = nil
}
+250
View File
@@ -0,0 +1,250 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.19.4
// source: models/model_ad_package.proto
package pb
import (
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// 高防产品
type ADPackage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
IsOn bool `protobuf:"varint,2,opt,name=isOn,proto3" json:"isOn,omitempty"`
AdNetworkId int64 `protobuf:"varint,3,opt,name=adNetworkId,proto3" json:"adNetworkId,omitempty"`
ProtectionBandwidthSize int32 `protobuf:"varint,4,opt,name=protectionBandwidthSize,proto3" json:"protectionBandwidthSize,omitempty"`
ProtectionBandwidthUnit string `protobuf:"bytes,5,opt,name=protectionBandwidthUnit,proto3" json:"protectionBandwidthUnit,omitempty"`
ServerBandwidthSize int32 `protobuf:"varint,6,opt,name=serverBandwidthSize,proto3" json:"serverBandwidthSize,omitempty"`
ServerBandwidthUnit string `protobuf:"bytes,7,opt,name=serverBandwidthUnit,proto3" json:"serverBandwidthUnit,omitempty"`
AdNetwork *ADNetwork `protobuf:"bytes,30,opt,name=adNetwork,proto3" json:"adNetwork,omitempty"`
Summary string `protobuf:"bytes,31,opt,name=summary,proto3" json:"summary,omitempty"` // 概述
CountIdleADPackageInstances int64 `protobuf:"varint,32,opt,name=countIdleADPackageInstances,proto3" json:"countIdleADPackageInstances,omitempty"` // 剩余可用的实例数,只有在获取可用高防产品的时候才会返回
}
func (x *ADPackage) Reset() {
*x = ADPackage{}
if protoimpl.UnsafeEnabled {
mi := &file_models_model_ad_package_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ADPackage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ADPackage) ProtoMessage() {}
func (x *ADPackage) ProtoReflect() protoreflect.Message {
mi := &file_models_model_ad_package_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ADPackage.ProtoReflect.Descriptor instead.
func (*ADPackage) Descriptor() ([]byte, []int) {
return file_models_model_ad_package_proto_rawDescGZIP(), []int{0}
}
func (x *ADPackage) GetId() int64 {
if x != nil {
return x.Id
}
return 0
}
func (x *ADPackage) GetIsOn() bool {
if x != nil {
return x.IsOn
}
return false
}
func (x *ADPackage) GetAdNetworkId() int64 {
if x != nil {
return x.AdNetworkId
}
return 0
}
func (x *ADPackage) GetProtectionBandwidthSize() int32 {
if x != nil {
return x.ProtectionBandwidthSize
}
return 0
}
func (x *ADPackage) GetProtectionBandwidthUnit() string {
if x != nil {
return x.ProtectionBandwidthUnit
}
return ""
}
func (x *ADPackage) GetServerBandwidthSize() int32 {
if x != nil {
return x.ServerBandwidthSize
}
return 0
}
func (x *ADPackage) GetServerBandwidthUnit() string {
if x != nil {
return x.ServerBandwidthUnit
}
return ""
}
func (x *ADPackage) GetAdNetwork() *ADNetwork {
if x != nil {
return x.AdNetwork
}
return nil
}
func (x *ADPackage) GetSummary() string {
if x != nil {
return x.Summary
}
return ""
}
func (x *ADPackage) GetCountIdleADPackageInstances() int64 {
if x != nil {
return x.CountIdleADPackageInstances
}
return 0
}
var File_models_model_ad_package_proto protoreflect.FileDescriptor
var file_models_model_ad_package_proto_rawDesc = []byte{
0x0a, 0x1d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x61,
0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
0x02, 0x70, 0x62, 0x1a, 0x1d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65,
0x6c, 0x5f, 0x61, 0x64, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x22, 0xb2, 0x03, 0x0a, 0x09, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64,
0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04,
0x69, 0x73, 0x4f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x64, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
0x6b, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61, 0x64, 0x4e, 0x65, 0x74,
0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x17, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x69, 0x7a,
0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x17, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x69, 0x7a, 0x65,
0x12, 0x38, 0x0a, 0x17, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x61,
0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x55, 0x6e, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28,
0x09, 0x52, 0x17, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e,
0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x30, 0x0a, 0x13, 0x73, 0x65,
0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x69, 0x7a,
0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42,
0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x30, 0x0a, 0x13,
0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x55,
0x6e, 0x69, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x65, 0x72, 0x76, 0x65,
0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x2b,
0x0a, 0x09, 0x61, 0x64, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x1e, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x44, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
0x52, 0x09, 0x61, 0x64, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x73,
0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75,
0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x40, 0x0a, 0x1b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64,
0x6c, 0x65, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x73, 0x18, 0x20, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1b, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x49, 0x64, 0x6c, 0x65, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x6e,
0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_models_model_ad_package_proto_rawDescOnce sync.Once
file_models_model_ad_package_proto_rawDescData = file_models_model_ad_package_proto_rawDesc
)
func file_models_model_ad_package_proto_rawDescGZIP() []byte {
file_models_model_ad_package_proto_rawDescOnce.Do(func() {
file_models_model_ad_package_proto_rawDescData = protoimpl.X.CompressGZIP(file_models_model_ad_package_proto_rawDescData)
})
return file_models_model_ad_package_proto_rawDescData
}
var file_models_model_ad_package_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_models_model_ad_package_proto_goTypes = []interface{}{
(*ADPackage)(nil), // 0: pb.ADPackage
(*ADNetwork)(nil), // 1: pb.ADNetwork
}
var file_models_model_ad_package_proto_depIdxs = []int32{
1, // 0: pb.ADPackage.adNetwork:type_name -> pb.ADNetwork
1, // [1:1] is the sub-list for method output_type
1, // [1:1] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
}
func init() { file_models_model_ad_package_proto_init() }
func file_models_model_ad_package_proto_init() {
if File_models_model_ad_package_proto != nil {
return
}
file_models_model_ad_network_proto_init()
if !protoimpl.UnsafeEnabled {
file_models_model_ad_package_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ADPackage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_models_model_ad_package_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_models_model_ad_package_proto_goTypes,
DependencyIndexes: file_models_model_ad_package_proto_depIdxs,
MessageInfos: file_models_model_ad_package_proto_msgTypes,
}.Build()
File_models_model_ad_package_proto = out.File
file_models_model_ad_package_proto_rawDesc = nil
file_models_model_ad_package_proto_goTypes = nil
file_models_model_ad_package_proto_depIdxs = nil
}
+274
View File
@@ -0,0 +1,274 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.19.4
// source: models/model_ad_package_instance.proto
package pb
import (
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// 高防产品实例
type ADPackageInstance struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
IsOn bool `protobuf:"varint,2,opt,name=isOn,proto3" json:"isOn,omitempty"`
AdPackageId int64 `protobuf:"varint,3,opt,name=adPackageId,proto3" json:"adPackageId,omitempty"`
NodeClusterId int64 `protobuf:"varint,4,opt,name=nodeClusterId,proto3" json:"nodeClusterId,omitempty"`
NodeIds []int64 `protobuf:"varint,5,rep,packed,name=nodeIds,proto3" json:"nodeIds,omitempty"`
IpAddresses []string `protobuf:"bytes,6,rep,name=ipAddresses,proto3" json:"ipAddresses,omitempty"`
UserId int64 `protobuf:"varint,7,opt,name=userId,proto3" json:"userId,omitempty"` // 租用用户ID
UserDayTo string `protobuf:"bytes,8,opt,name=userDayTo,proto3" json:"userDayTo,omitempty"` // 租用日期
UserInstanceId int64 `protobuf:"varint,9,opt,name=userInstanceId,proto3" json:"userInstanceId,omitempty"` // 当前绑定的用户实例ID
NodeCluster *NodeCluster `protobuf:"bytes,30,opt,name=nodeCluster,proto3" json:"nodeCluster,omitempty"`
AdPackage *ADPackage `protobuf:"bytes,31,opt,name=adPackage,proto3" json:"adPackage,omitempty"`
User *User `protobuf:"bytes,32,opt,name=user,proto3" json:"user,omitempty"`
}
func (x *ADPackageInstance) Reset() {
*x = ADPackageInstance{}
if protoimpl.UnsafeEnabled {
mi := &file_models_model_ad_package_instance_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ADPackageInstance) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ADPackageInstance) ProtoMessage() {}
func (x *ADPackageInstance) ProtoReflect() protoreflect.Message {
mi := &file_models_model_ad_package_instance_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ADPackageInstance.ProtoReflect.Descriptor instead.
func (*ADPackageInstance) Descriptor() ([]byte, []int) {
return file_models_model_ad_package_instance_proto_rawDescGZIP(), []int{0}
}
func (x *ADPackageInstance) GetId() int64 {
if x != nil {
return x.Id
}
return 0
}
func (x *ADPackageInstance) GetIsOn() bool {
if x != nil {
return x.IsOn
}
return false
}
func (x *ADPackageInstance) GetAdPackageId() int64 {
if x != nil {
return x.AdPackageId
}
return 0
}
func (x *ADPackageInstance) GetNodeClusterId() int64 {
if x != nil {
return x.NodeClusterId
}
return 0
}
func (x *ADPackageInstance) GetNodeIds() []int64 {
if x != nil {
return x.NodeIds
}
return nil
}
func (x *ADPackageInstance) GetIpAddresses() []string {
if x != nil {
return x.IpAddresses
}
return nil
}
func (x *ADPackageInstance) GetUserId() int64 {
if x != nil {
return x.UserId
}
return 0
}
func (x *ADPackageInstance) GetUserDayTo() string {
if x != nil {
return x.UserDayTo
}
return ""
}
func (x *ADPackageInstance) GetUserInstanceId() int64 {
if x != nil {
return x.UserInstanceId
}
return 0
}
func (x *ADPackageInstance) GetNodeCluster() *NodeCluster {
if x != nil {
return x.NodeCluster
}
return nil
}
func (x *ADPackageInstance) GetAdPackage() *ADPackage {
if x != nil {
return x.AdPackage
}
return nil
}
func (x *ADPackageInstance) GetUser() *User {
if x != nil {
return x.User
}
return nil
}
var File_models_model_ad_package_instance_proto protoreflect.FileDescriptor
var file_models_model_ad_package_instance_proto_rawDesc = []byte{
0x0a, 0x26, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x61,
0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x1f, 0x6d, 0x6f,
0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f,
0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x6d,
0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x61, 0x64, 0x5f, 0x70,
0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x6d, 0x6f,
0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x97, 0x03, 0x0a, 0x11, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b,
0x61, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x69,
0x73, 0x4f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12,
0x20, 0x0a, 0x0b, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x03,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49,
0x64, 0x12, 0x24, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c,
0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x49,
0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64,
0x73, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73,
0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
0x73, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x07, 0x20,
0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75,
0x73, 0x65, 0x72, 0x44, 0x61, 0x79, 0x54, 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x79, 0x54, 0x6f, 0x12, 0x26, 0x0a, 0x0e, 0x75, 0x73, 0x65,
0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28,
0x03, 0x52, 0x0e, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49,
0x64, 0x12, 0x31, 0x0a, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65,
0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75,
0x73, 0x74, 0x65, 0x72, 0x12, 0x2b, 0x0a, 0x09, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67,
0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x44, 0x50,
0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x09, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67,
0x65, 0x12, 0x1c, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x08, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x42,
0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_models_model_ad_package_instance_proto_rawDescOnce sync.Once
file_models_model_ad_package_instance_proto_rawDescData = file_models_model_ad_package_instance_proto_rawDesc
)
func file_models_model_ad_package_instance_proto_rawDescGZIP() []byte {
file_models_model_ad_package_instance_proto_rawDescOnce.Do(func() {
file_models_model_ad_package_instance_proto_rawDescData = protoimpl.X.CompressGZIP(file_models_model_ad_package_instance_proto_rawDescData)
})
return file_models_model_ad_package_instance_proto_rawDescData
}
var file_models_model_ad_package_instance_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_models_model_ad_package_instance_proto_goTypes = []interface{}{
(*ADPackageInstance)(nil), // 0: pb.ADPackageInstance
(*NodeCluster)(nil), // 1: pb.NodeCluster
(*ADPackage)(nil), // 2: pb.ADPackage
(*User)(nil), // 3: pb.User
}
var file_models_model_ad_package_instance_proto_depIdxs = []int32{
1, // 0: pb.ADPackageInstance.nodeCluster:type_name -> pb.NodeCluster
2, // 1: pb.ADPackageInstance.adPackage:type_name -> pb.ADPackage
3, // 2: pb.ADPackageInstance.user:type_name -> pb.User
3, // [3:3] is the sub-list for method output_type
3, // [3:3] is the sub-list for method input_type
3, // [3:3] is the sub-list for extension type_name
3, // [3:3] is the sub-list for extension extendee
0, // [0:3] is the sub-list for field type_name
}
func init() { file_models_model_ad_package_instance_proto_init() }
func file_models_model_ad_package_instance_proto_init() {
if File_models_model_ad_package_instance_proto != nil {
return
}
file_models_model_node_cluster_proto_init()
file_models_model_ad_package_proto_init()
file_models_model_user_proto_init()
if !protoimpl.UnsafeEnabled {
file_models_model_ad_package_instance_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ADPackageInstance); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_models_model_ad_package_instance_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_models_model_ad_package_instance_proto_goTypes,
DependencyIndexes: file_models_model_ad_package_instance_proto_depIdxs,
MessageInfos: file_models_model_ad_package_instance_proto_msgTypes,
}.Build()
File_models_model_ad_package_instance_proto = out.File
file_models_model_ad_package_instance_proto_rawDesc = nil
file_models_model_ad_package_instance_proto_goTypes = nil
file_models_model_ad_package_instance_proto_depIdxs = nil
}
+186
View File
@@ -0,0 +1,186 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.19.4
// source: models/model_ad_package_period.proto
package pb
import (
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// 高防实例有效期
type ADPackagePeriod struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
IsOn bool `protobuf:"varint,2,opt,name=isOn,proto3" json:"isOn,omitempty"`
Count int32 `protobuf:"varint,3,opt,name=count,proto3" json:"count,omitempty"`
Unit string `protobuf:"bytes,4,opt,name=unit,proto3" json:"unit,omitempty"`
Months int32 `protobuf:"varint,5,opt,name=months,proto3" json:"months,omitempty"`
}
func (x *ADPackagePeriod) Reset() {
*x = ADPackagePeriod{}
if protoimpl.UnsafeEnabled {
mi := &file_models_model_ad_package_period_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ADPackagePeriod) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ADPackagePeriod) ProtoMessage() {}
func (x *ADPackagePeriod) ProtoReflect() protoreflect.Message {
mi := &file_models_model_ad_package_period_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ADPackagePeriod.ProtoReflect.Descriptor instead.
func (*ADPackagePeriod) Descriptor() ([]byte, []int) {
return file_models_model_ad_package_period_proto_rawDescGZIP(), []int{0}
}
func (x *ADPackagePeriod) GetId() int64 {
if x != nil {
return x.Id
}
return 0
}
func (x *ADPackagePeriod) GetIsOn() bool {
if x != nil {
return x.IsOn
}
return false
}
func (x *ADPackagePeriod) GetCount() int32 {
if x != nil {
return x.Count
}
return 0
}
func (x *ADPackagePeriod) GetUnit() string {
if x != nil {
return x.Unit
}
return ""
}
func (x *ADPackagePeriod) GetMonths() int32 {
if x != nil {
return x.Months
}
return 0
}
var File_models_model_ad_package_period_proto protoreflect.FileDescriptor
var file_models_model_ad_package_period_proto_rawDesc = []byte{
0x0a, 0x24, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x61,
0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0x77, 0x0a, 0x0f, 0x41, 0x44,
0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x0e, 0x0a,
0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a,
0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f,
0x6e, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x6e, 0x69, 0x74, 0x18,
0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x6e, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d,
0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6d, 0x6f, 0x6e,
0x74, 0x68, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x33,
}
var (
file_models_model_ad_package_period_proto_rawDescOnce sync.Once
file_models_model_ad_package_period_proto_rawDescData = file_models_model_ad_package_period_proto_rawDesc
)
func file_models_model_ad_package_period_proto_rawDescGZIP() []byte {
file_models_model_ad_package_period_proto_rawDescOnce.Do(func() {
file_models_model_ad_package_period_proto_rawDescData = protoimpl.X.CompressGZIP(file_models_model_ad_package_period_proto_rawDescData)
})
return file_models_model_ad_package_period_proto_rawDescData
}
var file_models_model_ad_package_period_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_models_model_ad_package_period_proto_goTypes = []interface{}{
(*ADPackagePeriod)(nil), // 0: pb.ADPackagePeriod
}
var file_models_model_ad_package_period_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
0, // [0:0] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_models_model_ad_package_period_proto_init() }
func file_models_model_ad_package_period_proto_init() {
if File_models_model_ad_package_period_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_models_model_ad_package_period_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ADPackagePeriod); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_models_model_ad_package_period_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_models_model_ad_package_period_proto_goTypes,
DependencyIndexes: file_models_model_ad_package_period_proto_depIdxs,
MessageInfos: file_models_model_ad_package_period_proto_msgTypes,
}.Build()
File_models_model_ad_package_period_proto = out.File
file_models_model_ad_package_period_proto_rawDesc = nil
file_models_model_ad_package_period_proto_goTypes = nil
file_models_model_ad_package_period_proto_depIdxs = nil
}
+170
View File
@@ -0,0 +1,170 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.19.4
// source: models/model_ad_package_price.proto
package pb
import (
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// 高防产品价格定义
type ADPackagePrice struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AdPackageId int64 `protobuf:"varint,1,opt,name=adPackageId,proto3" json:"adPackageId,omitempty"`
AdPackagePeriodId int64 `protobuf:"varint,2,opt,name=adPackagePeriodId,proto3" json:"adPackagePeriodId,omitempty"`
Price float64 `protobuf:"fixed64,3,opt,name=price,proto3" json:"price,omitempty"`
}
func (x *ADPackagePrice) Reset() {
*x = ADPackagePrice{}
if protoimpl.UnsafeEnabled {
mi := &file_models_model_ad_package_price_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ADPackagePrice) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ADPackagePrice) ProtoMessage() {}
func (x *ADPackagePrice) ProtoReflect() protoreflect.Message {
mi := &file_models_model_ad_package_price_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ADPackagePrice.ProtoReflect.Descriptor instead.
func (*ADPackagePrice) Descriptor() ([]byte, []int) {
return file_models_model_ad_package_price_proto_rawDescGZIP(), []int{0}
}
func (x *ADPackagePrice) GetAdPackageId() int64 {
if x != nil {
return x.AdPackageId
}
return 0
}
func (x *ADPackagePrice) GetAdPackagePeriodId() int64 {
if x != nil {
return x.AdPackagePeriodId
}
return 0
}
func (x *ADPackagePrice) GetPrice() float64 {
if x != nil {
return x.Price
}
return 0
}
var File_models_model_ad_package_price_proto protoreflect.FileDescriptor
var file_models_model_ad_package_price_proto_rawDesc = []byte{
0x0a, 0x23, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x61,
0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0x76, 0x0a, 0x0e, 0x41, 0x44, 0x50,
0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61,
0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
0x52, 0x0b, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a,
0x11, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64,
0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b,
0x61, 0x67, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70,
0x72, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63,
0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
}
var (
file_models_model_ad_package_price_proto_rawDescOnce sync.Once
file_models_model_ad_package_price_proto_rawDescData = file_models_model_ad_package_price_proto_rawDesc
)
func file_models_model_ad_package_price_proto_rawDescGZIP() []byte {
file_models_model_ad_package_price_proto_rawDescOnce.Do(func() {
file_models_model_ad_package_price_proto_rawDescData = protoimpl.X.CompressGZIP(file_models_model_ad_package_price_proto_rawDescData)
})
return file_models_model_ad_package_price_proto_rawDescData
}
var file_models_model_ad_package_price_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_models_model_ad_package_price_proto_goTypes = []interface{}{
(*ADPackagePrice)(nil), // 0: pb.ADPackagePrice
}
var file_models_model_ad_package_price_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
0, // [0:0] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_models_model_ad_package_price_proto_init() }
func file_models_model_ad_package_price_proto_init() {
if File_models_model_ad_package_price_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_models_model_ad_package_price_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ADPackagePrice); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_models_model_ad_package_price_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_models_model_ad_package_price_proto_goTypes,
DependencyIndexes: file_models_model_ad_package_price_proto_depIdxs,
MessageInfos: file_models_model_ad_package_price_proto_msgTypes,
}.Build()
File_models_model_ad_package_price_proto = out.File
file_models_model_ad_package_price_proto_rawDesc = nil
file_models_model_ad_package_price_proto_goTypes = nil
file_models_model_ad_package_price_proto_depIdxs = nil
}
+23 -3
View File
@@ -40,6 +40,8 @@ type AuthorityKey struct {
Company string `protobuf:"bytes,7,opt,name=company,proto3" json:"company,omitempty"` Company string `protobuf:"bytes,7,opt,name=company,proto3" json:"company,omitempty"`
Nodes int32 `protobuf:"varint,8,opt,name=nodes,proto3" json:"nodes,omitempty"` Nodes int32 `protobuf:"varint,8,opt,name=nodes,proto3" json:"nodes,omitempty"`
Components []string `protobuf:"bytes,9,rep,name=components,proto3" json:"components,omitempty"` Components []string `protobuf:"bytes,9,rep,name=components,proto3" json:"components,omitempty"`
Edition string `protobuf:"bytes,10,opt,name=edition,proto3" json:"edition,omitempty"`
RequestCode string `protobuf:"bytes,11,opt,name=requestCode,proto3" json:"requestCode,omitempty"`
} }
func (x *AuthorityKey) Reset() { func (x *AuthorityKey) Reset() {
@@ -137,12 +139,26 @@ func (x *AuthorityKey) GetComponents() []string {
return nil return nil
} }
func (x *AuthorityKey) GetEdition() string {
if x != nil {
return x.Edition
}
return ""
}
func (x *AuthorityKey) GetRequestCode() string {
if x != nil {
return x.RequestCode
}
return ""
}
var File_models_model_authority_key_proto protoreflect.FileDescriptor var File_models_model_authority_key_proto protoreflect.FileDescriptor
var file_models_model_authority_key_proto_rawDesc = []byte{ var file_models_model_authority_key_proto_rawDesc = []byte{
0x0a, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x61, 0x0a, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x61,
0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x6b, 0x65, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x6b, 0x65, 0x79, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0x82, 0x02, 0x0a, 0x0c, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0xbe, 0x02, 0x0a, 0x0c, 0x41, 0x75, 0x74, 0x68, 0x6f,
0x72, 0x69, 0x74, 0x79, 0x4b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x72, 0x69, 0x74, 0x79, 0x4b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x18, 0x0a, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x18, 0x0a,
0x07, 0x64, 0x61, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x07, 0x64, 0x61, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
@@ -158,8 +174,12 @@ var file_models_model_authority_key_proto_rawDesc = []byte{
0x6d, 0x70, 0x61, 0x6e, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x08, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x08,
0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63,
0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52,
0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65,
0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x64,
0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x43, 0x6f, 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
} }
var ( var (
+215
View File
@@ -0,0 +1,215 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.19.4
// source: models/model_login_session.proto
package pb
import (
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// 登录SESSION
type LoginSession struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
AdminId int64 `protobuf:"varint,2,opt,name=adminId,proto3" json:"adminId,omitempty"`
UserId int64 `protobuf:"varint,3,opt,name=userId,proto3" json:"userId,omitempty"`
Sid string `protobuf:"bytes,4,opt,name=sid,proto3" json:"sid,omitempty"`
ValuesJSON []byte `protobuf:"bytes,5,opt,name=valuesJSON,proto3" json:"valuesJSON,omitempty"`
Ip string `protobuf:"bytes,6,opt,name=ip,proto3" json:"ip,omitempty"`
CreatedAt int64 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt,omitempty"`
ExpiresAt int64 `protobuf:"varint,8,opt,name=expiresAt,proto3" json:"expiresAt,omitempty"`
}
func (x *LoginSession) Reset() {
*x = LoginSession{}
if protoimpl.UnsafeEnabled {
mi := &file_models_model_login_session_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LoginSession) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LoginSession) ProtoMessage() {}
func (x *LoginSession) ProtoReflect() protoreflect.Message {
mi := &file_models_model_login_session_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LoginSession.ProtoReflect.Descriptor instead.
func (*LoginSession) Descriptor() ([]byte, []int) {
return file_models_model_login_session_proto_rawDescGZIP(), []int{0}
}
func (x *LoginSession) GetId() int64 {
if x != nil {
return x.Id
}
return 0
}
func (x *LoginSession) GetAdminId() int64 {
if x != nil {
return x.AdminId
}
return 0
}
func (x *LoginSession) GetUserId() int64 {
if x != nil {
return x.UserId
}
return 0
}
func (x *LoginSession) GetSid() string {
if x != nil {
return x.Sid
}
return ""
}
func (x *LoginSession) GetValuesJSON() []byte {
if x != nil {
return x.ValuesJSON
}
return nil
}
func (x *LoginSession) GetIp() string {
if x != nil {
return x.Ip
}
return ""
}
func (x *LoginSession) GetCreatedAt() int64 {
if x != nil {
return x.CreatedAt
}
return 0
}
func (x *LoginSession) GetExpiresAt() int64 {
if x != nil {
return x.ExpiresAt
}
return 0
}
var File_models_model_login_session_proto protoreflect.FileDescriptor
var file_models_model_login_session_proto_rawDesc = []byte{
0x0a, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6c,
0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0xce, 0x01, 0x0a, 0x0c, 0x4c, 0x6f, 0x67, 0x69, 0x6e,
0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e,
0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49,
0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x69, 0x64,
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52,
0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x0e, 0x0a, 0x02, 0x69,
0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x63,
0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x70,
0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x78,
0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_models_model_login_session_proto_rawDescOnce sync.Once
file_models_model_login_session_proto_rawDescData = file_models_model_login_session_proto_rawDesc
)
func file_models_model_login_session_proto_rawDescGZIP() []byte {
file_models_model_login_session_proto_rawDescOnce.Do(func() {
file_models_model_login_session_proto_rawDescData = protoimpl.X.CompressGZIP(file_models_model_login_session_proto_rawDescData)
})
return file_models_model_login_session_proto_rawDescData
}
var file_models_model_login_session_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_models_model_login_session_proto_goTypes = []interface{}{
(*LoginSession)(nil), // 0: pb.LoginSession
}
var file_models_model_login_session_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
0, // [0:0] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_models_model_login_session_proto_init() }
func file_models_model_login_session_proto_init() {
if File_models_model_login_session_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_models_model_login_session_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LoginSession); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_models_model_login_session_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_models_model_login_session_proto_goTypes,
DependencyIndexes: file_models_model_login_session_proto_depIdxs,
MessageInfos: file_models_model_login_session_proto_msgTypes,
}.Build()
File_models_model_login_session_proto = out.File
file_models_model_login_session_proto_rawDesc = nil
file_models_model_login_session_proto_goTypes = nil
file_models_model_login_session_proto_depIdxs = nil
}
+43 -27
View File
@@ -44,6 +44,7 @@ type NodeIPAddress struct {
Role string `protobuf:"bytes,12,opt,name=role,proto3" json:"role,omitempty"` Role string `protobuf:"bytes,12,opt,name=role,proto3" json:"role,omitempty"`
BackupIP string `protobuf:"bytes,13,opt,name=backupIP,proto3" json:"backupIP,omitempty"` BackupIP string `protobuf:"bytes,13,opt,name=backupIP,proto3" json:"backupIP,omitempty"`
IsHealthy bool `protobuf:"varint,14,opt,name=isHealthy,proto3" json:"isHealthy,omitempty"` IsHealthy bool `protobuf:"varint,14,opt,name=isHealthy,proto3" json:"isHealthy,omitempty"`
NodeClusters []*NodeCluster `protobuf:"bytes,30,rep,name=nodeClusters,proto3" json:"nodeClusters,omitempty"`
} }
func (x *NodeIPAddress) Reset() { func (x *NodeIPAddress) Reset() {
@@ -169,33 +170,45 @@ func (x *NodeIPAddress) GetIsHealthy() bool {
return false return false
} }
func (x *NodeIPAddress) GetNodeClusters() []*NodeCluster {
if x != nil {
return x.NodeClusters
}
return nil
}
var File_models_model_node_ip_address_proto protoreflect.FileDescriptor var File_models_model_node_ip_address_proto protoreflect.FileDescriptor
var file_models_model_node_ip_address_proto_rawDesc = []byte{ var file_models_model_node_ip_address_proto_rawDesc = []byte{
0x0a, 0x22, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x0a, 0x22, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e,
0x6f, 0x64, 0x65, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x70, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0xbd, 0x02, 0x0a, 0x0d, 0x4e, 0x6f, 0x64, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x1f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73,
0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6c, 0x75, 0x73,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf2, 0x02, 0x0a, 0x0d, 0x4e, 0x6f,
0x64, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69,
0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6e,
0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x6f, 0x64,
0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x04, 0x20,
0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x14, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65,
0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61,
0x72, 0x64, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12,
0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x14, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05,
0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65,
0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x55, 0x70, 0x18, 0x0a, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63,
0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x55, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28,
0x6c, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x1a, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x55, 0x70, 0x18,
0x0a, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x50, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x55, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x72,
0x52, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x50, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x6f, 0x6c, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12,
0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x1a, 0x0a, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x50, 0x18, 0x0d, 0x20, 0x01, 0x28,
0x73, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x09, 0x52, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x50, 0x12, 0x1c, 0x0a, 0x09, 0x69,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x73, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
0x69, 0x73, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x12, 0x33, 0x0a, 0x0c, 0x6e, 0x6f, 0x64,
0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x42, 0x06,
0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
} }
var ( var (
@@ -213,13 +226,15 @@ func file_models_model_node_ip_address_proto_rawDescGZIP() []byte {
var file_models_model_node_ip_address_proto_msgTypes = make([]protoimpl.MessageInfo, 1) var file_models_model_node_ip_address_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_models_model_node_ip_address_proto_goTypes = []interface{}{ var file_models_model_node_ip_address_proto_goTypes = []interface{}{
(*NodeIPAddress)(nil), // 0: pb.NodeIPAddress (*NodeIPAddress)(nil), // 0: pb.NodeIPAddress
(*NodeCluster)(nil), // 1: pb.NodeCluster
} }
var file_models_model_node_ip_address_proto_depIdxs = []int32{ var file_models_model_node_ip_address_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type 1, // 0: pb.NodeIPAddress.nodeClusters:type_name -> pb.NodeCluster
0, // [0:0] is the sub-list for method input_type 1, // [1:1] is the sub-list for method output_type
0, // [0:0] is the sub-list for extension type_name 1, // [1:1] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension extendee 1, // [1:1] is the sub-list for extension type_name
0, // [0:0] is the sub-list for field type_name 1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
} }
func init() { file_models_model_node_ip_address_proto_init() } func init() { file_models_model_node_ip_address_proto_init() }
@@ -227,6 +242,7 @@ func file_models_model_node_ip_address_proto_init() {
if File_models_model_node_ip_address_proto != nil { if File_models_model_node_ip_address_proto != nil {
return return
} }
file_models_model_node_cluster_proto_init()
if !protoimpl.UnsafeEnabled { if !protoimpl.UnsafeEnabled {
file_models_model_node_ip_address_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { file_models_model_node_ip_address_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*NodeIPAddress); i { switch v := v.(*NodeIPAddress); i {
+20 -10
View File
@@ -31,14 +31,15 @@ type ServerBandwidthStat struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` // ID
UserId int64 `protobuf:"varint,2,opt,name=userId,proto3" json:"userId,omitempty"` UserId int64 `protobuf:"varint,2,opt,name=userId,proto3" json:"userId,omitempty"` // 用户ID
ServerId int64 `protobuf:"varint,3,opt,name=serverId,proto3" json:"serverId,omitempty"` ServerId int64 `protobuf:"varint,3,opt,name=serverId,proto3" json:"serverId,omitempty"` //服务ID
Day string `protobuf:"bytes,4,opt,name=day,proto3" json:"day,omitempty"` Day string `protobuf:"bytes,4,opt,name=day,proto3" json:"day,omitempty"` // 日期,格式YYYYMMDD
TimeAt string `protobuf:"bytes,5,opt,name=timeAt,proto3" json:"timeAt,omitempty"` TimeAt string `protobuf:"bytes,5,opt,name=timeAt,proto3" json:"timeAt,omitempty"` // 时间,格式HHII
Bytes int64 `protobuf:"varint,6,opt,name=bytes,proto3" json:"bytes,omitempty"` Bytes int64 `protobuf:"varint,6,opt,name=bytes,proto3" json:"bytes,omitempty"` // 峰值带宽字节
Bits int64 `protobuf:"varint,7,opt,name=bits,proto3" json:"bits,omitempty"` TotalBytes int64 `protobuf:"varint,9,opt,name=totalBytes,proto3" json:"totalBytes,omitempty"` // 总流量
NodeRegionId int64 `protobuf:"varint,8,opt,name=nodeRegionId,proto3" json:"nodeRegionId,omitempty"` Bits int64 `protobuf:"varint,7,opt,name=bits,proto3" json:"bits,omitempty"` // 峰值带宽比特
NodeRegionId int64 `protobuf:"varint,8,opt,name=nodeRegionId,proto3" json:"nodeRegionId,omitempty"` // 节点所在区域ID
} }
func (x *ServerBandwidthStat) Reset() { func (x *ServerBandwidthStat) Reset() {
@@ -115,6 +116,13 @@ func (x *ServerBandwidthStat) GetBytes() int64 {
return 0 return 0
} }
func (x *ServerBandwidthStat) GetTotalBytes() int64 {
if x != nil {
return x.TotalBytes
}
return 0
}
func (x *ServerBandwidthStat) GetBits() int64 { func (x *ServerBandwidthStat) GetBits() int64 {
if x != nil { if x != nil {
return x.Bits return x.Bits
@@ -134,7 +142,7 @@ var File_models_model_server_bandwidth_stat_proto protoreflect.FileDescriptor
var file_models_model_server_bandwidth_stat_proto_rawDesc = []byte{ var file_models_model_server_bandwidth_stat_proto_rawDesc = []byte{
0x0a, 0x28, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x73, 0x0a, 0x28, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x73,
0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f,
0x73, 0x74, 0x61, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0xd1, 0x73, 0x74, 0x61, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0xf1,
0x01, 0x0a, 0x13, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x01, 0x0a, 0x13, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64,
0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64,
@@ -144,7 +152,9 @@ var file_models_model_server_bandwidth_stat_proto_rawDesc = []byte{
0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x16, 0x0a, 0x06,
0x74, 0x69, 0x6d, 0x65, 0x41, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x74, 0x69, 0x6d, 0x65, 0x41, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69,
0x6d, 0x65, 0x41, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x06, 0x20, 0x6d, 0x65, 0x41, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x06, 0x20,
0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f,
0x74, 0x61, 0x6c, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a,
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69,
0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12, 0x22, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12, 0x22,
0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x08, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x08,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e,
+21 -11
View File
@@ -47,6 +47,7 @@ type User struct {
IsDeleted bool `protobuf:"varint,16,opt,name=isDeleted,proto3" json:"isDeleted,omitempty"` IsDeleted bool `protobuf:"varint,16,opt,name=isDeleted,proto3" json:"isDeleted,omitempty"`
IsIndividualIdentified bool `protobuf:"varint,17,opt,name=isIndividualIdentified,proto3" json:"isIndividualIdentified,omitempty"` IsIndividualIdentified bool `protobuf:"varint,17,opt,name=isIndividualIdentified,proto3" json:"isIndividualIdentified,omitempty"`
IsEnterpriseIdentified bool `protobuf:"varint,18,opt,name=isEnterpriseIdentified,proto3" json:"isEnterpriseIdentified,omitempty"` IsEnterpriseIdentified bool `protobuf:"varint,18,opt,name=isEnterpriseIdentified,proto3" json:"isEnterpriseIdentified,omitempty"`
BandwidthAlgo string `protobuf:"bytes,21,opt,name=bandwidthAlgo,proto3" json:"bandwidthAlgo,omitempty"` // 带宽算法
OtpLogin *Login `protobuf:"bytes,19,opt,name=otpLogin,proto3" json:"otpLogin,omitempty"` // OTP认证 OtpLogin *Login `protobuf:"bytes,19,opt,name=otpLogin,proto3" json:"otpLogin,omitempty"` // OTP认证
NodeCluster *NodeCluster `protobuf:"bytes,10,opt,name=nodeCluster,proto3" json:"nodeCluster,omitempty"` NodeCluster *NodeCluster `protobuf:"bytes,10,opt,name=nodeCluster,proto3" json:"nodeCluster,omitempty"`
Features []*UserFeature `protobuf:"bytes,11,rep,name=features,proto3" json:"features,omitempty"` Features []*UserFeature `protobuf:"bytes,11,rep,name=features,proto3" json:"features,omitempty"`
@@ -203,6 +204,13 @@ func (x *User) GetIsEnterpriseIdentified() bool {
return false return false
} }
func (x *User) GetBandwidthAlgo() string {
if x != nil {
return x.BandwidthAlgo
}
return ""
}
func (x *User) GetOtpLogin() *Login { func (x *User) GetOtpLogin() *Login {
if x != nil { if x != nil {
return x.OtpLogin return x.OtpLogin
@@ -234,7 +242,7 @@ var file_models_model_user_proto_rawDesc = []byte{
0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65,
0x72, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x72, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
0x18, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6c, 0x6f, 0x18, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6c, 0x6f,
0x67, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9b, 0x05, 0x0a, 0x04, 0x55, 0x73, 0x67, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc1, 0x05, 0x0a, 0x04, 0x55, 0x73,
0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02,
0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a,
@@ -268,16 +276,18 @@ var file_models_model_user_proto_rawDesc = []byte{
0x74, 0x65, 0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x74, 0x65, 0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69,
0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x69, 0x73, 0x45, 0x6e, 0x74, 0x65, 0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x69, 0x73, 0x45, 0x6e, 0x74, 0x65,
0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64,
0x12, 0x25, 0x0a, 0x08, 0x6f, 0x74, 0x70, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x12, 0x24, 0x0a, 0x0d, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x41, 0x6c, 0x67,
0x28, 0x0b, 0x32, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x08, 0x6f, 0x6f, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64,
0x74, 0x70, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x31, 0x0a, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x74, 0x68, 0x41, 0x6c, 0x67, 0x6f, 0x12, 0x25, 0x0a, 0x08, 0x6f, 0x74, 0x70, 0x4c, 0x6f, 0x67,
0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x69, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f,
0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x0b, 0x6e, 0x67, 0x69, 0x6e, 0x52, 0x08, 0x6f, 0x74, 0x70, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x31, 0x0a,
0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x2b, 0x0a, 0x08, 0x66, 0x65, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01,
0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73,
0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x74, 0x65, 0x72, 0x52, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x12, 0x2b, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74,
0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x06, 0x5a,
0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
} }
var ( var (
+324
View File
@@ -0,0 +1,324 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.19.4
// source: models/model_user_ad_instance.proto
package pb
import (
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// 高防实例
type UserADInstance struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
UserId int64 `protobuf:"varint,2,opt,name=userId,proto3" json:"userId,omitempty"`
AdPackageInstanceId int64 `protobuf:"varint,3,opt,name=adPackageInstanceId,proto3" json:"adPackageInstanceId,omitempty"`
AdPackagePeriodId int64 `protobuf:"varint,4,opt,name=adPackagePeriodId,proto3" json:"adPackagePeriodId,omitempty"`
AdPackagePeriodCount int32 `protobuf:"varint,5,opt,name=adPackagePeriodCount,proto3" json:"adPackagePeriodCount,omitempty"`
AdPackagePeriodUnit string `protobuf:"bytes,6,opt,name=adPackagePeriodUnit,proto3" json:"adPackagePeriodUnit,omitempty"`
DayFrom string `protobuf:"bytes,7,opt,name=dayFrom,proto3" json:"dayFrom,omitempty"` // 开始日期,格式:YYYYMMDD
DayTo string `protobuf:"bytes,8,opt,name=dayTo,proto3" json:"dayTo,omitempty"` // 结束日期,格式:YYYYMMDD
CreatedAt int64 `protobuf:"varint,9,opt,name=createdAt,proto3" json:"createdAt,omitempty"`
MaxObjects int32 `protobuf:"varint,10,opt,name=maxObjects,proto3" json:"maxObjects,omitempty"`
ObjectCodes []string `protobuf:"bytes,11,rep,name=objectCodes,proto3" json:"objectCodes,omitempty"`
AdPackageInstance *ADPackageInstance `protobuf:"bytes,30,opt,name=adPackageInstance,proto3" json:"adPackageInstance,omitempty"`
User *User `protobuf:"bytes,31,opt,name=user,proto3" json:"user,omitempty"`
CanDelete bool `protobuf:"varint,32,opt,name=canDelete,proto3" json:"canDelete,omitempty"`
IsAvailable bool `protobuf:"varint,33,opt,name=isAvailable,proto3" json:"isAvailable,omitempty"` // 当前是否在生效中
CountObjects int32 `protobuf:"varint,34,opt,name=countObjects,proto3" json:"countObjects,omitempty"` // 防护对象数量
ObjectsJSON []byte `protobuf:"bytes,35,opt,name=objectsJSON,proto3" json:"objectsJSON,omitempty"` // 对象JSON
}
func (x *UserADInstance) Reset() {
*x = UserADInstance{}
if protoimpl.UnsafeEnabled {
mi := &file_models_model_user_ad_instance_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UserADInstance) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UserADInstance) ProtoMessage() {}
func (x *UserADInstance) ProtoReflect() protoreflect.Message {
mi := &file_models_model_user_ad_instance_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UserADInstance.ProtoReflect.Descriptor instead.
func (*UserADInstance) Descriptor() ([]byte, []int) {
return file_models_model_user_ad_instance_proto_rawDescGZIP(), []int{0}
}
func (x *UserADInstance) GetId() int64 {
if x != nil {
return x.Id
}
return 0
}
func (x *UserADInstance) GetUserId() int64 {
if x != nil {
return x.UserId
}
return 0
}
func (x *UserADInstance) GetAdPackageInstanceId() int64 {
if x != nil {
return x.AdPackageInstanceId
}
return 0
}
func (x *UserADInstance) GetAdPackagePeriodId() int64 {
if x != nil {
return x.AdPackagePeriodId
}
return 0
}
func (x *UserADInstance) GetAdPackagePeriodCount() int32 {
if x != nil {
return x.AdPackagePeriodCount
}
return 0
}
func (x *UserADInstance) GetAdPackagePeriodUnit() string {
if x != nil {
return x.AdPackagePeriodUnit
}
return ""
}
func (x *UserADInstance) GetDayFrom() string {
if x != nil {
return x.DayFrom
}
return ""
}
func (x *UserADInstance) GetDayTo() string {
if x != nil {
return x.DayTo
}
return ""
}
func (x *UserADInstance) GetCreatedAt() int64 {
if x != nil {
return x.CreatedAt
}
return 0
}
func (x *UserADInstance) GetMaxObjects() int32 {
if x != nil {
return x.MaxObjects
}
return 0
}
func (x *UserADInstance) GetObjectCodes() []string {
if x != nil {
return x.ObjectCodes
}
return nil
}
func (x *UserADInstance) GetAdPackageInstance() *ADPackageInstance {
if x != nil {
return x.AdPackageInstance
}
return nil
}
func (x *UserADInstance) GetUser() *User {
if x != nil {
return x.User
}
return nil
}
func (x *UserADInstance) GetCanDelete() bool {
if x != nil {
return x.CanDelete
}
return false
}
func (x *UserADInstance) GetIsAvailable() bool {
if x != nil {
return x.IsAvailable
}
return false
}
func (x *UserADInstance) GetCountObjects() int32 {
if x != nil {
return x.CountObjects
}
return 0
}
func (x *UserADInstance) GetObjectsJSON() []byte {
if x != nil {
return x.ObjectsJSON
}
return nil
}
var File_models_model_user_ad_instance_proto protoreflect.FileDescriptor
var file_models_model_user_ad_instance_proto_rawDesc = []byte{
0x0a, 0x23, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x75,
0x73, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x26, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x61, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61,
0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x1a, 0x17, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f,
0x75, 0x73, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf7, 0x04, 0x0a, 0x0e, 0x55,
0x73, 0x65, 0x72, 0x41, 0x44, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x0e, 0x0a,
0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a,
0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75,
0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61,
0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01,
0x28, 0x03, 0x52, 0x13, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x61, 0x64, 0x50, 0x61, 0x63,
0x6b, 0x61, 0x67, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01,
0x28, 0x03, 0x52, 0x11, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x65, 0x72,
0x69, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x14, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61,
0x67, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20,
0x01, 0x28, 0x05, 0x52, 0x14, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x65,
0x72, 0x69, 0x6f, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x64, 0x50,
0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x55, 0x6e, 0x69, 0x74,
0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67,
0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x64,
0x61, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x61,
0x79, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x61, 0x79, 0x54, 0x6f, 0x18, 0x08,
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x61, 0x79, 0x54, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x63,
0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x61, 0x78,
0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d,
0x61, 0x78, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x62, 0x6a,
0x65, 0x63, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b,
0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x11, 0x61,
0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x44, 0x50, 0x61,
0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x11, 0x61,
0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x12, 0x1c, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08,
0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x1c,
0x0a, 0x09, 0x63, 0x61, 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x20, 0x20, 0x01, 0x28,
0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b,
0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x21, 0x20, 0x01, 0x28,
0x08, 0x52, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x22,
0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x22,
0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63,
0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x4a, 0x53, 0x4f,
0x4e, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73,
0x4a, 0x53, 0x4f, 0x4e, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x33,
}
var (
file_models_model_user_ad_instance_proto_rawDescOnce sync.Once
file_models_model_user_ad_instance_proto_rawDescData = file_models_model_user_ad_instance_proto_rawDesc
)
func file_models_model_user_ad_instance_proto_rawDescGZIP() []byte {
file_models_model_user_ad_instance_proto_rawDescOnce.Do(func() {
file_models_model_user_ad_instance_proto_rawDescData = protoimpl.X.CompressGZIP(file_models_model_user_ad_instance_proto_rawDescData)
})
return file_models_model_user_ad_instance_proto_rawDescData
}
var file_models_model_user_ad_instance_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_models_model_user_ad_instance_proto_goTypes = []interface{}{
(*UserADInstance)(nil), // 0: pb.UserADInstance
(*ADPackageInstance)(nil), // 1: pb.ADPackageInstance
(*User)(nil), // 2: pb.User
}
var file_models_model_user_ad_instance_proto_depIdxs = []int32{
1, // 0: pb.UserADInstance.adPackageInstance:type_name -> pb.ADPackageInstance
2, // 1: pb.UserADInstance.user:type_name -> pb.User
2, // [2:2] is the sub-list for method output_type
2, // [2:2] is the sub-list for method input_type
2, // [2:2] is the sub-list for extension type_name
2, // [2:2] is the sub-list for extension extendee
0, // [0:2] is the sub-list for field type_name
}
func init() { file_models_model_user_ad_instance_proto_init() }
func file_models_model_user_ad_instance_proto_init() {
if File_models_model_user_ad_instance_proto != nil {
return
}
file_models_model_ad_package_instance_proto_init()
file_models_model_user_proto_init()
if !protoimpl.UnsafeEnabled {
file_models_model_user_ad_instance_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UserADInstance); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_models_model_user_ad_instance_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_models_model_user_ad_instance_proto_goTypes,
DependencyIndexes: file_models_model_user_ad_instance_proto_depIdxs,
MessageInfos: file_models_model_user_ad_instance_proto_msgTypes,
}.Build()
File_models_model_user_ad_instance_proto = out.File
file_models_model_user_ad_instance_proto_rawDesc = nil
file_models_model_user_ad_instance_proto_goTypes = nil
file_models_model_user_ad_instance_proto_depIdxs = nil
}
+1 -1
View File
@@ -35,7 +35,7 @@ type UserBandwidthStat struct {
UserId int64 `protobuf:"varint,2,opt,name=userId,proto3" json:"userId,omitempty"` UserId int64 `protobuf:"varint,2,opt,name=userId,proto3" json:"userId,omitempty"`
Day string `protobuf:"bytes,3,opt,name=day,proto3" json:"day,omitempty"` Day string `protobuf:"bytes,3,opt,name=day,proto3" json:"day,omitempty"`
TimeAt string `protobuf:"bytes,4,opt,name=timeAt,proto3" json:"timeAt,omitempty"` TimeAt string `protobuf:"bytes,4,opt,name=timeAt,proto3" json:"timeAt,omitempty"`
Bytes int64 `protobuf:"varint,5,opt,name=bytes,proto3" json:"bytes,omitempty"` Bytes int64 `protobuf:"varint,5,opt,name=bytes,proto3" json:"bytes,omitempty"` // 峰值带宽字节
} }
func (x *UserBandwidthStat) Reset() { func (x *UserBandwidthStat) Reset() {
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+931
View File
@@ -0,0 +1,931 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.19.4
// source: service_ad_package_price.proto
package pb
import (
context "context"
proto "github.com/golang/protobuf/proto"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// 设置高防产品价格
type UpdateADPackagePriceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AdPackageId int64 `protobuf:"varint,1,opt,name=adPackageId,proto3" json:"adPackageId,omitempty"`
AdPackagePeriodId int64 `protobuf:"varint,2,opt,name=adPackagePeriodId,proto3" json:"adPackagePeriodId,omitempty"`
Price float64 `protobuf:"fixed64,3,opt,name=price,proto3" json:"price,omitempty"`
}
func (x *UpdateADPackagePriceRequest) Reset() {
*x = UpdateADPackagePriceRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ad_package_price_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateADPackagePriceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateADPackagePriceRequest) ProtoMessage() {}
func (x *UpdateADPackagePriceRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_ad_package_price_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateADPackagePriceRequest.ProtoReflect.Descriptor instead.
func (*UpdateADPackagePriceRequest) Descriptor() ([]byte, []int) {
return file_service_ad_package_price_proto_rawDescGZIP(), []int{0}
}
func (x *UpdateADPackagePriceRequest) GetAdPackageId() int64 {
if x != nil {
return x.AdPackageId
}
return 0
}
func (x *UpdateADPackagePriceRequest) GetAdPackagePeriodId() int64 {
if x != nil {
return x.AdPackagePeriodId
}
return 0
}
func (x *UpdateADPackagePriceRequest) GetPrice() float64 {
if x != nil {
return x.Price
}
return 0
}
// 获取单个高防产品具体价格
type FindADPackagePriceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AdPackageId int64 `protobuf:"varint,1,opt,name=adPackageId,proto3" json:"adPackageId,omitempty"`
AdPackagePeriodId int64 `protobuf:"varint,2,opt,name=adPackagePeriodId,proto3" json:"adPackagePeriodId,omitempty"`
Count int32 `protobuf:"varint,3,opt,name=count,proto3" json:"count,omitempty"`
}
func (x *FindADPackagePriceRequest) Reset() {
*x = FindADPackagePriceRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ad_package_price_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindADPackagePriceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindADPackagePriceRequest) ProtoMessage() {}
func (x *FindADPackagePriceRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_ad_package_price_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindADPackagePriceRequest.ProtoReflect.Descriptor instead.
func (*FindADPackagePriceRequest) Descriptor() ([]byte, []int) {
return file_service_ad_package_price_proto_rawDescGZIP(), []int{1}
}
func (x *FindADPackagePriceRequest) GetAdPackageId() int64 {
if x != nil {
return x.AdPackageId
}
return 0
}
func (x *FindADPackagePriceRequest) GetAdPackagePeriodId() int64 {
if x != nil {
return x.AdPackagePeriodId
}
return 0
}
func (x *FindADPackagePriceRequest) GetCount() int32 {
if x != nil {
return x.Count
}
return 0
}
type FindADPackagePriceResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Price float64 `protobuf:"fixed64,1,opt,name=price,proto3" json:"price,omitempty"` // 单价
Amount float64 `protobuf:"fixed64,2,opt,name=amount,proto3" json:"amount,omitempty"` // 总价
}
func (x *FindADPackagePriceResponse) Reset() {
*x = FindADPackagePriceResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ad_package_price_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindADPackagePriceResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindADPackagePriceResponse) ProtoMessage() {}
func (x *FindADPackagePriceResponse) ProtoReflect() protoreflect.Message {
mi := &file_service_ad_package_price_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindADPackagePriceResponse.ProtoReflect.Descriptor instead.
func (*FindADPackagePriceResponse) Descriptor() ([]byte, []int) {
return file_service_ad_package_price_proto_rawDescGZIP(), []int{2}
}
func (x *FindADPackagePriceResponse) GetPrice() float64 {
if x != nil {
return x.Price
}
return 0
}
func (x *FindADPackagePriceResponse) GetAmount() float64 {
if x != nil {
return x.Amount
}
return 0
}
// 计算高防产品价格项数量
type CountADPackagePricesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AdPackageId int64 `protobuf:"varint,1,opt,name=adPackageId,proto3" json:"adPackageId,omitempty"`
}
func (x *CountADPackagePricesRequest) Reset() {
*x = CountADPackagePricesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ad_package_price_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CountADPackagePricesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CountADPackagePricesRequest) ProtoMessage() {}
func (x *CountADPackagePricesRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_ad_package_price_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CountADPackagePricesRequest.ProtoReflect.Descriptor instead.
func (*CountADPackagePricesRequest) Descriptor() ([]byte, []int) {
return file_service_ad_package_price_proto_rawDescGZIP(), []int{3}
}
func (x *CountADPackagePricesRequest) GetAdPackageId() int64 {
if x != nil {
return x.AdPackageId
}
return 0
}
// 查找高防产品价格
type FindADPackagePricesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AdPackageId int64 `protobuf:"varint,1,opt,name=adPackageId,proto3" json:"adPackageId,omitempty"`
}
func (x *FindADPackagePricesRequest) Reset() {
*x = FindADPackagePricesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ad_package_price_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindADPackagePricesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindADPackagePricesRequest) ProtoMessage() {}
func (x *FindADPackagePricesRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_ad_package_price_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindADPackagePricesRequest.ProtoReflect.Descriptor instead.
func (*FindADPackagePricesRequest) Descriptor() ([]byte, []int) {
return file_service_ad_package_price_proto_rawDescGZIP(), []int{4}
}
func (x *FindADPackagePricesRequest) GetAdPackageId() int64 {
if x != nil {
return x.AdPackageId
}
return 0
}
type FindADPackagePricesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AdPackagePrices []*ADPackagePrice `protobuf:"bytes,1,rep,name=adPackagePrices,proto3" json:"adPackagePrices,omitempty"`
}
func (x *FindADPackagePricesResponse) Reset() {
*x = FindADPackagePricesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ad_package_price_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindADPackagePricesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindADPackagePricesResponse) ProtoMessage() {}
func (x *FindADPackagePricesResponse) ProtoReflect() protoreflect.Message {
mi := &file_service_ad_package_price_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindADPackagePricesResponse.ProtoReflect.Descriptor instead.
func (*FindADPackagePricesResponse) Descriptor() ([]byte, []int) {
return file_service_ad_package_price_proto_rawDescGZIP(), []int{5}
}
func (x *FindADPackagePricesResponse) GetAdPackagePrices() []*ADPackagePrice {
if x != nil {
return x.AdPackagePrices
}
return nil
}
// 查找所有高防产品价格
type FindAllADPackagePricesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *FindAllADPackagePricesRequest) Reset() {
*x = FindAllADPackagePricesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ad_package_price_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindAllADPackagePricesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindAllADPackagePricesRequest) ProtoMessage() {}
func (x *FindAllADPackagePricesRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_ad_package_price_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindAllADPackagePricesRequest.ProtoReflect.Descriptor instead.
func (*FindAllADPackagePricesRequest) Descriptor() ([]byte, []int) {
return file_service_ad_package_price_proto_rawDescGZIP(), []int{6}
}
type FindAllADPackagePricesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AdPackagePrices []*ADPackagePrice `protobuf:"bytes,1,rep,name=adPackagePrices,proto3" json:"adPackagePrices,omitempty"`
}
func (x *FindAllADPackagePricesResponse) Reset() {
*x = FindAllADPackagePricesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ad_package_price_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindAllADPackagePricesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindAllADPackagePricesResponse) ProtoMessage() {}
func (x *FindAllADPackagePricesResponse) ProtoReflect() protoreflect.Message {
mi := &file_service_ad_package_price_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindAllADPackagePricesResponse.ProtoReflect.Descriptor instead.
func (*FindAllADPackagePricesResponse) Descriptor() ([]byte, []int) {
return file_service_ad_package_price_proto_rawDescGZIP(), []int{7}
}
func (x *FindAllADPackagePricesResponse) GetAdPackagePrices() []*ADPackagePrice {
if x != nil {
return x.AdPackagePrices
}
return nil
}
var File_service_ad_package_price_proto protoreflect.FileDescriptor
var file_service_ad_package_price_proto_rawDesc = []byte{
0x0a, 0x1e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x5f, 0x70, 0x61, 0x63,
0x6b, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x12, 0x02, 0x70, 0x62, 0x1a, 0x23, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64,
0x65, 0x6c, 0x5f, 0x61, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x72,
0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
0x73, 0x2f, 0x72, 0x70, 0x63, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x22, 0x83, 0x01, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41,
0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67,
0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61, 0x64, 0x50, 0x61, 0x63,
0x6b, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b,
0x61, 0x67, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x03, 0x52, 0x11, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x65, 0x72, 0x69,
0x6f, 0x64, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20,
0x01, 0x28, 0x01, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0x81, 0x01, 0x0a, 0x19, 0x46,
0x69, 0x6e, 0x64, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63,
0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x64, 0x50, 0x61,
0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61,
0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x61, 0x64,
0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x49, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4a,
0x0a, 0x1a, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50,
0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05,
0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x70, 0x72, 0x69,
0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
0x28, 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x3f, 0x0a, 0x1b, 0x43, 0x6f,
0x75, 0x6e, 0x74, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63,
0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x64, 0x50,
0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b,
0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x64, 0x22, 0x3e, 0x0a, 0x1a, 0x46,
0x69, 0x6e, 0x64, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63,
0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x64, 0x50,
0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b,
0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x64, 0x22, 0x5b, 0x0a, 0x1b, 0x46,
0x69, 0x6e, 0x64, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63,
0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x0f, 0x61, 0x64,
0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61,
0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x0f, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61,
0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x73, 0x22, 0x1f, 0x0a, 0x1d, 0x46, 0x69, 0x6e, 0x64,
0x41, 0x6c, 0x6c, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63,
0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x5e, 0x0a, 0x1e, 0x46, 0x69, 0x6e,
0x64, 0x41, 0x6c, 0x6c, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69,
0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x0f, 0x61,
0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x73, 0x18, 0x01,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b,
0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x0f, 0x61, 0x64, 0x50, 0x61, 0x63, 0x6b,
0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x73, 0x32, 0xbd, 0x03, 0x0a, 0x15, 0x41, 0x44,
0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x53, 0x65, 0x72, 0x76,
0x69, 0x63, 0x65, 0x12, 0x47, 0x0a, 0x14, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x44, 0x50,
0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1f, 0x2e, 0x70, 0x62,
0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70,
0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x53, 0x0a, 0x12,
0x66, 0x69, 0x6e, 0x64, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69,
0x63, 0x65, 0x12, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x44, 0x50, 0x61,
0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x44, 0x50, 0x61, 0x63,
0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x4d, 0x0a, 0x14, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b,
0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x43,
0x6f, 0x75, 0x6e, 0x74, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69,
0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e,
0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x56, 0x0a, 0x13, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67,
0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e,
0x64, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e,
0x64, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x73,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x16, 0x66, 0x69, 0x6e, 0x64,
0x41, 0x6c, 0x6c, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63,
0x65, 0x73, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x41,
0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41,
0x6c, 0x6c, 0x41, 0x44, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65,
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70,
0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_service_ad_package_price_proto_rawDescOnce sync.Once
file_service_ad_package_price_proto_rawDescData = file_service_ad_package_price_proto_rawDesc
)
func file_service_ad_package_price_proto_rawDescGZIP() []byte {
file_service_ad_package_price_proto_rawDescOnce.Do(func() {
file_service_ad_package_price_proto_rawDescData = protoimpl.X.CompressGZIP(file_service_ad_package_price_proto_rawDescData)
})
return file_service_ad_package_price_proto_rawDescData
}
var file_service_ad_package_price_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
var file_service_ad_package_price_proto_goTypes = []interface{}{
(*UpdateADPackagePriceRequest)(nil), // 0: pb.UpdateADPackagePriceRequest
(*FindADPackagePriceRequest)(nil), // 1: pb.FindADPackagePriceRequest
(*FindADPackagePriceResponse)(nil), // 2: pb.FindADPackagePriceResponse
(*CountADPackagePricesRequest)(nil), // 3: pb.CountADPackagePricesRequest
(*FindADPackagePricesRequest)(nil), // 4: pb.FindADPackagePricesRequest
(*FindADPackagePricesResponse)(nil), // 5: pb.FindADPackagePricesResponse
(*FindAllADPackagePricesRequest)(nil), // 6: pb.FindAllADPackagePricesRequest
(*FindAllADPackagePricesResponse)(nil), // 7: pb.FindAllADPackagePricesResponse
(*ADPackagePrice)(nil), // 8: pb.ADPackagePrice
(*RPCSuccess)(nil), // 9: pb.RPCSuccess
(*RPCCountResponse)(nil), // 10: pb.RPCCountResponse
}
var file_service_ad_package_price_proto_depIdxs = []int32{
8, // 0: pb.FindADPackagePricesResponse.adPackagePrices:type_name -> pb.ADPackagePrice
8, // 1: pb.FindAllADPackagePricesResponse.adPackagePrices:type_name -> pb.ADPackagePrice
0, // 2: pb.ADPackagePriceService.updateADPackagePrice:input_type -> pb.UpdateADPackagePriceRequest
1, // 3: pb.ADPackagePriceService.findADPackagePrice:input_type -> pb.FindADPackagePriceRequest
3, // 4: pb.ADPackagePriceService.countADPackagePrices:input_type -> pb.CountADPackagePricesRequest
4, // 5: pb.ADPackagePriceService.findADPackagePrices:input_type -> pb.FindADPackagePricesRequest
6, // 6: pb.ADPackagePriceService.findAllADPackagePrices:input_type -> pb.FindAllADPackagePricesRequest
9, // 7: pb.ADPackagePriceService.updateADPackagePrice:output_type -> pb.RPCSuccess
2, // 8: pb.ADPackagePriceService.findADPackagePrice:output_type -> pb.FindADPackagePriceResponse
10, // 9: pb.ADPackagePriceService.countADPackagePrices:output_type -> pb.RPCCountResponse
5, // 10: pb.ADPackagePriceService.findADPackagePrices:output_type -> pb.FindADPackagePricesResponse
7, // 11: pb.ADPackagePriceService.findAllADPackagePrices:output_type -> pb.FindAllADPackagePricesResponse
7, // [7:12] is the sub-list for method output_type
2, // [2:7] is the sub-list for method input_type
2, // [2:2] is the sub-list for extension type_name
2, // [2:2] is the sub-list for extension extendee
0, // [0:2] is the sub-list for field type_name
}
func init() { file_service_ad_package_price_proto_init() }
func file_service_ad_package_price_proto_init() {
if File_service_ad_package_price_proto != nil {
return
}
file_models_model_ad_package_price_proto_init()
file_models_rpc_messages_proto_init()
if !protoimpl.UnsafeEnabled {
file_service_ad_package_price_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateADPackagePriceRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_ad_package_price_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindADPackagePriceRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_ad_package_price_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindADPackagePriceResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_ad_package_price_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CountADPackagePricesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_ad_package_price_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindADPackagePricesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_ad_package_price_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindADPackagePricesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_ad_package_price_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindAllADPackagePricesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_ad_package_price_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindAllADPackagePricesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_service_ad_package_price_proto_rawDesc,
NumEnums: 0,
NumMessages: 8,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_service_ad_package_price_proto_goTypes,
DependencyIndexes: file_service_ad_package_price_proto_depIdxs,
MessageInfos: file_service_ad_package_price_proto_msgTypes,
}.Build()
File_service_ad_package_price_proto = out.File
file_service_ad_package_price_proto_rawDesc = nil
file_service_ad_package_price_proto_goTypes = nil
file_service_ad_package_price_proto_depIdxs = nil
}
// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConnInterface
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion6
// ADPackagePriceServiceClient is the client API for ADPackagePriceService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type ADPackagePriceServiceClient interface {
// 设置高防产品价格
UpdateADPackagePrice(ctx context.Context, in *UpdateADPackagePriceRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 获取单个高防产品具体价格
FindADPackagePrice(ctx context.Context, in *FindADPackagePriceRequest, opts ...grpc.CallOption) (*FindADPackagePriceResponse, error)
// 计算高防产品价格项数量
CountADPackagePrices(ctx context.Context, in *CountADPackagePricesRequest, opts ...grpc.CallOption) (*RPCCountResponse, error)
// 查找高防产品价格
FindADPackagePrices(ctx context.Context, in *FindADPackagePricesRequest, opts ...grpc.CallOption) (*FindADPackagePricesResponse, error)
// 查找所有高防产品价格
FindAllADPackagePrices(ctx context.Context, in *FindAllADPackagePricesRequest, opts ...grpc.CallOption) (*FindAllADPackagePricesResponse, error)
}
type aDPackagePriceServiceClient struct {
cc grpc.ClientConnInterface
}
func NewADPackagePriceServiceClient(cc grpc.ClientConnInterface) ADPackagePriceServiceClient {
return &aDPackagePriceServiceClient{cc}
}
func (c *aDPackagePriceServiceClient) UpdateADPackagePrice(ctx context.Context, in *UpdateADPackagePriceRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, "/pb.ADPackagePriceService/updateADPackagePrice", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *aDPackagePriceServiceClient) FindADPackagePrice(ctx context.Context, in *FindADPackagePriceRequest, opts ...grpc.CallOption) (*FindADPackagePriceResponse, error) {
out := new(FindADPackagePriceResponse)
err := c.cc.Invoke(ctx, "/pb.ADPackagePriceService/findADPackagePrice", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *aDPackagePriceServiceClient) CountADPackagePrices(ctx context.Context, in *CountADPackagePricesRequest, opts ...grpc.CallOption) (*RPCCountResponse, error) {
out := new(RPCCountResponse)
err := c.cc.Invoke(ctx, "/pb.ADPackagePriceService/countADPackagePrices", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *aDPackagePriceServiceClient) FindADPackagePrices(ctx context.Context, in *FindADPackagePricesRequest, opts ...grpc.CallOption) (*FindADPackagePricesResponse, error) {
out := new(FindADPackagePricesResponse)
err := c.cc.Invoke(ctx, "/pb.ADPackagePriceService/findADPackagePrices", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *aDPackagePriceServiceClient) FindAllADPackagePrices(ctx context.Context, in *FindAllADPackagePricesRequest, opts ...grpc.CallOption) (*FindAllADPackagePricesResponse, error) {
out := new(FindAllADPackagePricesResponse)
err := c.cc.Invoke(ctx, "/pb.ADPackagePriceService/findAllADPackagePrices", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// ADPackagePriceServiceServer is the server API for ADPackagePriceService service.
type ADPackagePriceServiceServer interface {
// 设置高防产品价格
UpdateADPackagePrice(context.Context, *UpdateADPackagePriceRequest) (*RPCSuccess, error)
// 获取单个高防产品具体价格
FindADPackagePrice(context.Context, *FindADPackagePriceRequest) (*FindADPackagePriceResponse, error)
// 计算高防产品价格项数量
CountADPackagePrices(context.Context, *CountADPackagePricesRequest) (*RPCCountResponse, error)
// 查找高防产品价格
FindADPackagePrices(context.Context, *FindADPackagePricesRequest) (*FindADPackagePricesResponse, error)
// 查找所有高防产品价格
FindAllADPackagePrices(context.Context, *FindAllADPackagePricesRequest) (*FindAllADPackagePricesResponse, error)
}
// UnimplementedADPackagePriceServiceServer can be embedded to have forward compatible implementations.
type UnimplementedADPackagePriceServiceServer struct {
}
func (*UnimplementedADPackagePriceServiceServer) UpdateADPackagePrice(context.Context, *UpdateADPackagePriceRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateADPackagePrice not implemented")
}
func (*UnimplementedADPackagePriceServiceServer) FindADPackagePrice(context.Context, *FindADPackagePriceRequest) (*FindADPackagePriceResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindADPackagePrice not implemented")
}
func (*UnimplementedADPackagePriceServiceServer) CountADPackagePrices(context.Context, *CountADPackagePricesRequest) (*RPCCountResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method CountADPackagePrices not implemented")
}
func (*UnimplementedADPackagePriceServiceServer) FindADPackagePrices(context.Context, *FindADPackagePricesRequest) (*FindADPackagePricesResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindADPackagePrices not implemented")
}
func (*UnimplementedADPackagePriceServiceServer) FindAllADPackagePrices(context.Context, *FindAllADPackagePricesRequest) (*FindAllADPackagePricesResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindAllADPackagePrices not implemented")
}
func RegisterADPackagePriceServiceServer(s *grpc.Server, srv ADPackagePriceServiceServer) {
s.RegisterService(&_ADPackagePriceService_serviceDesc, srv)
}
func _ADPackagePriceService_UpdateADPackagePrice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateADPackagePriceRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ADPackagePriceServiceServer).UpdateADPackagePrice(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.ADPackagePriceService/UpdateADPackagePrice",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ADPackagePriceServiceServer).UpdateADPackagePrice(ctx, req.(*UpdateADPackagePriceRequest))
}
return interceptor(ctx, in, info, handler)
}
func _ADPackagePriceService_FindADPackagePrice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindADPackagePriceRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ADPackagePriceServiceServer).FindADPackagePrice(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.ADPackagePriceService/FindADPackagePrice",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ADPackagePriceServiceServer).FindADPackagePrice(ctx, req.(*FindADPackagePriceRequest))
}
return interceptor(ctx, in, info, handler)
}
func _ADPackagePriceService_CountADPackagePrices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CountADPackagePricesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ADPackagePriceServiceServer).CountADPackagePrices(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.ADPackagePriceService/CountADPackagePrices",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ADPackagePriceServiceServer).CountADPackagePrices(ctx, req.(*CountADPackagePricesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _ADPackagePriceService_FindADPackagePrices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindADPackagePricesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ADPackagePriceServiceServer).FindADPackagePrices(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.ADPackagePriceService/FindADPackagePrices",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ADPackagePriceServiceServer).FindADPackagePrices(ctx, req.(*FindADPackagePricesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _ADPackagePriceService_FindAllADPackagePrices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindAllADPackagePricesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ADPackagePriceServiceServer).FindAllADPackagePrices(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.ADPackagePriceService/FindAllADPackagePrices",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ADPackagePriceServiceServer).FindAllADPackagePrices(ctx, req.(*FindAllADPackagePricesRequest))
}
return interceptor(ctx, in, info, handler)
}
var _ADPackagePriceService_serviceDesc = grpc.ServiceDesc{
ServiceName: "pb.ADPackagePriceService",
HandlerType: (*ADPackagePriceServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "updateADPackagePrice",
Handler: _ADPackagePriceService_UpdateADPackagePrice_Handler,
},
{
MethodName: "findADPackagePrice",
Handler: _ADPackagePriceService_FindADPackagePrice_Handler,
},
{
MethodName: "countADPackagePrices",
Handler: _ADPackagePriceService_CountADPackagePrices_Handler,
},
{
MethodName: "findADPackagePrices",
Handler: _ADPackagePriceService_FindADPackagePrices_Handler,
},
{
MethodName: "findAllADPackagePrices",
Handler: _ADPackagePriceService_FindAllADPackagePrices_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "service_ad_package_price.proto",
}
+261 -41
View File
@@ -770,7 +770,9 @@ type FindCurrentAPINodeVersionResponse struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` // 版本号
Os string `protobuf:"bytes,2,opt,name=os,proto3" json:"os,omitempty"` // 系统代号,比如linux
Arch string `protobuf:"bytes,3,opt,name=arch,proto3" json:"arch,omitempty"` // 架构
} }
func (x *FindCurrentAPINodeVersionResponse) Reset() { func (x *FindCurrentAPINodeVersionResponse) Reset() {
@@ -812,6 +814,20 @@ func (x *FindCurrentAPINodeVersionResponse) GetVersion() string {
return "" return ""
} }
func (x *FindCurrentAPINodeVersionResponse) GetOs() string {
if x != nil {
return x.Os
}
return ""
}
func (x *FindCurrentAPINodeVersionResponse) GetArch() string {
if x != nil {
return x.Arch
}
return ""
}
// 获取当前API节点的信息 // 获取当前API节点的信息
type FindCurrentAPINodeRequest struct { type FindCurrentAPINodeRequest struct {
state protoimpl.MessageState state protoimpl.MessageState
@@ -994,6 +1010,124 @@ func (x *DebugAPINodeRequest) GetDebug() bool {
return false return false
} }
// 上传新版API节点文件
type UploadAPINodeFileRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Filename string `protobuf:"bytes,1,opt,name=filename,proto3" json:"filename,omitempty"` // 文件名
Sum string `protobuf:"bytes,2,opt,name=sum,proto3" json:"sum,omitempty"` // 整个文件的SUM值
ChunkData []byte `protobuf:"bytes,3,opt,name=chunkData,proto3" json:"chunkData,omitempty"` // 片段数据
IsFirstChunk bool `protobuf:"varint,4,opt,name=isFirstChunk,proto3" json:"isFirstChunk,omitempty"` // 是否为第一个片段
IsLastChunk bool `protobuf:"varint,5,opt,name=isLastChunk,proto3" json:"isLastChunk,omitempty"` // 是否为最后一个片段
}
func (x *UploadAPINodeFileRequest) Reset() {
*x = UploadAPINodeFileRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_api_node_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UploadAPINodeFileRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UploadAPINodeFileRequest) ProtoMessage() {}
func (x *UploadAPINodeFileRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_api_node_proto_msgTypes[18]
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 UploadAPINodeFileRequest.ProtoReflect.Descriptor instead.
func (*UploadAPINodeFileRequest) Descriptor() ([]byte, []int) {
return file_service_api_node_proto_rawDescGZIP(), []int{18}
}
func (x *UploadAPINodeFileRequest) GetFilename() string {
if x != nil {
return x.Filename
}
return ""
}
func (x *UploadAPINodeFileRequest) GetSum() string {
if x != nil {
return x.Sum
}
return ""
}
func (x *UploadAPINodeFileRequest) GetChunkData() []byte {
if x != nil {
return x.ChunkData
}
return nil
}
func (x *UploadAPINodeFileRequest) GetIsFirstChunk() bool {
if x != nil {
return x.IsFirstChunk
}
return false
}
func (x *UploadAPINodeFileRequest) GetIsLastChunk() bool {
if x != nil {
return x.IsLastChunk
}
return false
}
type UploadAPINodeFileResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *UploadAPINodeFileResponse) Reset() {
*x = UploadAPINodeFileResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_service_api_node_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UploadAPINodeFileResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UploadAPINodeFileResponse) ProtoMessage() {}
func (x *UploadAPINodeFileResponse) ProtoReflect() protoreflect.Message {
mi := &file_service_api_node_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 UploadAPINodeFileResponse.ProtoReflect.Descriptor instead.
func (*UploadAPINodeFileResponse) Descriptor() ([]byte, []int) {
return file_service_api_node_proto_rawDescGZIP(), []int{19}
}
var File_service_api_node_proto protoreflect.FileDescriptor var File_service_api_node_proto protoreflect.FileDescriptor
var file_service_api_node_proto_rawDesc = []byte{ var file_service_api_node_proto_rawDesc = []byte{
@@ -1081,24 +1215,39 @@ var file_service_api_node_proto_rawDesc = []byte{
0x49, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x22, 0x22, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x22, 0x22,
0x0a, 0x20, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x41, 0x50, 0x49, 0x0a, 0x20, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x41, 0x50, 0x49,
0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x22, 0x3d, 0x0a, 0x21, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x73, 0x74, 0x22, 0x61, 0x0a, 0x21, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e,
0x74, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x74, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x22, 0x1b, 0x0a, 0x19, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x6f,
0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x43, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0a, 0x1a, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x41, 0x50, 0x49, 0x04, 0x61, 0x72, 0x63, 0x68, 0x22, 0x1b, 0x0a, 0x19, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72,
0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x07, 0x72, 0x65, 0x6e, 0x74, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x73, 0x74, 0x22, 0x43, 0x0a, 0x1a, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e,
0x70, 0x62, 0x2e, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x61, 0x70, 0x69, 0x4e, 0x74, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x6f, 0x64, 0x65, 0x22, 0x4b, 0x0a, 0x2b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x12, 0x25, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x57, 0x69, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07,
0x74, 0x68, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x22, 0x4b, 0x0a, 0x2b, 0x43, 0x6f, 0x75, 0x6e, 0x74,
0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x18, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64,
0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x52,
0x22, 0x2b, 0x0a, 0x13, 0x44, 0x65, 0x62, 0x75, 0x67, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65,
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, 0x32, 0xf5, 0x07, 0x72, 0x74, 0x49, 0x64, 0x22, 0x2b, 0x0a, 0x13, 0x44, 0x65, 0x62, 0x75, 0x67, 0x41, 0x50, 0x49,
0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x64,
0x65, 0x62, 0x75, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x64, 0x65, 0x62, 0x75,
0x67, 0x22, 0xac, 0x01, 0x0a, 0x18, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x50, 0x49, 0x4e,
0x6f, 0x64, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a,
0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x75,
0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09,
0x63, 0x68, 0x75, 0x6e, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52,
0x09, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73,
0x46, 0x69, 0x72, 0x73, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08,
0x52, 0x0c, 0x69, 0x73, 0x46, 0x69, 0x72, 0x73, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x12, 0x20,
0x0a, 0x0b, 0x69, 0x73, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x18, 0x05, 0x20,
0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b,
0x22, 0x1b, 0x0a, 0x19, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64,
0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xc7, 0x08,
0x0a, 0x0e, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x0a, 0x0e, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
0x12, 0x44, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x12, 0x44, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64,
0x65, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x50, 0x49, 0x65, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x50, 0x49,
@@ -1162,8 +1311,13 @@ var file_service_api_node_proto_rawDesc = []byte{
0x64, 0x65, 0x62, 0x75, 0x67, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x2e, 0x70, 0x64, 0x65, 0x62, 0x75, 0x67, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x2e, 0x70,
0x62, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x62, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75,
0x63, 0x63, 0x65, 0x73, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x50, 0x0a, 0x11, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41,
0x72, 0x6f, 0x74, 0x6f, 0x33, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e,
0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x46, 0x69, 0x6c,
0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70,
0x6c, 0x6f, 0x61, 0x64, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
} }
var ( var (
@@ -1178,7 +1332,7 @@ func file_service_api_node_proto_rawDescGZIP() []byte {
return file_service_api_node_proto_rawDescData return file_service_api_node_proto_rawDescData
} }
var file_service_api_node_proto_msgTypes = make([]protoimpl.MessageInfo, 18) var file_service_api_node_proto_msgTypes = make([]protoimpl.MessageInfo, 20)
var file_service_api_node_proto_goTypes = []interface{}{ var file_service_api_node_proto_goTypes = []interface{}{
(*CreateAPINodeRequest)(nil), // 0: pb.CreateAPINodeRequest (*CreateAPINodeRequest)(nil), // 0: pb.CreateAPINodeRequest
(*CreateAPINodeResponse)(nil), // 1: pb.CreateAPINodeResponse (*CreateAPINodeResponse)(nil), // 1: pb.CreateAPINodeResponse
@@ -1198,15 +1352,17 @@ var file_service_api_node_proto_goTypes = []interface{}{
(*FindCurrentAPINodeResponse)(nil), // 15: pb.FindCurrentAPINodeResponse (*FindCurrentAPINodeResponse)(nil), // 15: pb.FindCurrentAPINodeResponse
(*CountAllEnabledAPINodesWithSSLCertIdRequest)(nil), // 16: pb.CountAllEnabledAPINodesWithSSLCertIdRequest (*CountAllEnabledAPINodesWithSSLCertIdRequest)(nil), // 16: pb.CountAllEnabledAPINodesWithSSLCertIdRequest
(*DebugAPINodeRequest)(nil), // 17: pb.DebugAPINodeRequest (*DebugAPINodeRequest)(nil), // 17: pb.DebugAPINodeRequest
(*APINode)(nil), // 18: pb.APINode (*UploadAPINodeFileRequest)(nil), // 18: pb.UploadAPINodeFileRequest
(*RPCSuccess)(nil), // 19: pb.RPCSuccess (*UploadAPINodeFileResponse)(nil), // 19: pb.UploadAPINodeFileResponse
(*RPCCountResponse)(nil), // 20: pb.RPCCountResponse (*APINode)(nil), // 20: pb.APINode
(*RPCSuccess)(nil), // 21: pb.RPCSuccess
(*RPCCountResponse)(nil), // 22: pb.RPCCountResponse
} }
var file_service_api_node_proto_depIdxs = []int32{ var file_service_api_node_proto_depIdxs = []int32{
18, // 0: pb.FindAllEnabledAPINodesResponse.apiNodes:type_name -> pb.APINode 20, // 0: pb.FindAllEnabledAPINodesResponse.apiNodes:type_name -> pb.APINode
18, // 1: pb.ListEnabledAPINodesResponse.apiNodes:type_name -> pb.APINode 20, // 1: pb.ListEnabledAPINodesResponse.apiNodes:type_name -> pb.APINode
18, // 2: pb.FindEnabledAPINodeResponse.apiNode:type_name -> pb.APINode 20, // 2: pb.FindEnabledAPINodeResponse.apiNode:type_name -> pb.APINode
18, // 3: pb.FindCurrentAPINodeResponse.apiNode:type_name -> pb.APINode 20, // 3: pb.FindCurrentAPINodeResponse.apiNode:type_name -> pb.APINode
0, // 4: pb.APINodeService.createAPINode:input_type -> pb.CreateAPINodeRequest 0, // 4: pb.APINodeService.createAPINode:input_type -> pb.CreateAPINodeRequest
2, // 5: pb.APINodeService.updateAPINode:input_type -> pb.UpdateAPINodeRequest 2, // 5: pb.APINodeService.updateAPINode:input_type -> pb.UpdateAPINodeRequest
3, // 6: pb.APINodeService.deleteAPINode:input_type -> pb.DeleteAPINodeRequest 3, // 6: pb.APINodeService.deleteAPINode:input_type -> pb.DeleteAPINodeRequest
@@ -1219,20 +1375,22 @@ var file_service_api_node_proto_depIdxs = []int32{
14, // 13: pb.APINodeService.findCurrentAPINode:input_type -> pb.FindCurrentAPINodeRequest 14, // 13: pb.APINodeService.findCurrentAPINode:input_type -> pb.FindCurrentAPINodeRequest
16, // 14: pb.APINodeService.countAllEnabledAPINodesWithSSLCertId:input_type -> pb.CountAllEnabledAPINodesWithSSLCertIdRequest 16, // 14: pb.APINodeService.countAllEnabledAPINodesWithSSLCertId:input_type -> pb.CountAllEnabledAPINodesWithSSLCertIdRequest
17, // 15: pb.APINodeService.debugAPINode:input_type -> pb.DebugAPINodeRequest 17, // 15: pb.APINodeService.debugAPINode:input_type -> pb.DebugAPINodeRequest
1, // 16: pb.APINodeService.createAPINode:output_type -> pb.CreateAPINodeResponse 18, // 16: pb.APINodeService.uploadAPINodeFile:input_type -> pb.UploadAPINodeFileRequest
19, // 17: pb.APINodeService.updateAPINode:output_type -> pb.RPCSuccess 1, // 17: pb.APINodeService.createAPINode:output_type -> pb.CreateAPINodeResponse
19, // 18: pb.APINodeService.deleteAPINode:output_type -> pb.RPCSuccess 21, // 18: pb.APINodeService.updateAPINode:output_type -> pb.RPCSuccess
5, // 19: pb.APINodeService.findAllEnabledAPINodes:output_type -> pb.FindAllEnabledAPINodesResponse 21, // 19: pb.APINodeService.deleteAPINode:output_type -> pb.RPCSuccess
20, // 20: pb.APINodeService.countAllEnabledAPINodes:output_type -> pb.RPCCountResponse 5, // 20: pb.APINodeService.findAllEnabledAPINodes:output_type -> pb.FindAllEnabledAPINodesResponse
20, // 21: pb.APINodeService.countAllEnabledAndOnAPINodes:output_type -> pb.RPCCountResponse 22, // 21: pb.APINodeService.countAllEnabledAPINodes:output_type -> pb.RPCCountResponse
9, // 22: pb.APINodeService.listEnabledAPINodes:output_type -> pb.ListEnabledAPINodesResponse 22, // 22: pb.APINodeService.countAllEnabledAndOnAPINodes:output_type -> pb.RPCCountResponse
11, // 23: pb.APINodeService.findEnabledAPINode:output_type -> pb.FindEnabledAPINodeResponse 9, // 23: pb.APINodeService.listEnabledAPINodes:output_type -> pb.ListEnabledAPINodesResponse
13, // 24: pb.APINodeService.findCurrentAPINodeVersion:output_type -> pb.FindCurrentAPINodeVersionResponse 11, // 24: pb.APINodeService.findEnabledAPINode:output_type -> pb.FindEnabledAPINodeResponse
15, // 25: pb.APINodeService.findCurrentAPINode:output_type -> pb.FindCurrentAPINodeResponse 13, // 25: pb.APINodeService.findCurrentAPINodeVersion:output_type -> pb.FindCurrentAPINodeVersionResponse
20, // 26: pb.APINodeService.countAllEnabledAPINodesWithSSLCertId:output_type -> pb.RPCCountResponse 15, // 26: pb.APINodeService.findCurrentAPINode:output_type -> pb.FindCurrentAPINodeResponse
19, // 27: pb.APINodeService.debugAPINode:output_type -> pb.RPCSuccess 22, // 27: pb.APINodeService.countAllEnabledAPINodesWithSSLCertId:output_type -> pb.RPCCountResponse
16, // [16:28] is the sub-list for method output_type 21, // 28: pb.APINodeService.debugAPINode:output_type -> pb.RPCSuccess
4, // [4:16] is the sub-list for method input_type 19, // 29: pb.APINodeService.uploadAPINodeFile:output_type -> pb.UploadAPINodeFileResponse
17, // [17:30] is the sub-list for method output_type
4, // [4:17] is the sub-list for method input_type
4, // [4:4] is the sub-list for extension type_name 4, // [4:4] is the sub-list for extension type_name
4, // [4:4] is the sub-list for extension extendee 4, // [4:4] is the sub-list for extension extendee
0, // [0:4] is the sub-list for field type_name 0, // [0:4] is the sub-list for field type_name
@@ -1462,6 +1620,30 @@ func file_service_api_node_proto_init() {
return nil return nil
} }
} }
file_service_api_node_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UploadAPINodeFileRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_api_node_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UploadAPINodeFileResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
} }
type x struct{} type x struct{}
out := protoimpl.TypeBuilder{ out := protoimpl.TypeBuilder{
@@ -1469,7 +1651,7 @@ func file_service_api_node_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(), GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_service_api_node_proto_rawDesc, RawDescriptor: file_service_api_node_proto_rawDesc,
NumEnums: 0, NumEnums: 0,
NumMessages: 18, NumMessages: 20,
NumExtensions: 0, NumExtensions: 0,
NumServices: 1, NumServices: 1,
}, },
@@ -1519,6 +1701,8 @@ type APINodeServiceClient interface {
CountAllEnabledAPINodesWithSSLCertId(ctx context.Context, in *CountAllEnabledAPINodesWithSSLCertIdRequest, opts ...grpc.CallOption) (*RPCCountResponse, error) CountAllEnabledAPINodesWithSSLCertId(ctx context.Context, in *CountAllEnabledAPINodesWithSSLCertIdRequest, opts ...grpc.CallOption) (*RPCCountResponse, error)
// 修改调试模式状态 // 修改调试模式状态
DebugAPINode(ctx context.Context, in *DebugAPINodeRequest, opts ...grpc.CallOption) (*RPCSuccess, error) DebugAPINode(ctx context.Context, in *DebugAPINodeRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 上传新版API节点文件
UploadAPINodeFile(ctx context.Context, in *UploadAPINodeFileRequest, opts ...grpc.CallOption) (*UploadAPINodeFileResponse, error)
} }
type aPINodeServiceClient struct { type aPINodeServiceClient struct {
@@ -1637,6 +1821,15 @@ func (c *aPINodeServiceClient) DebugAPINode(ctx context.Context, in *DebugAPINod
return out, nil return out, nil
} }
func (c *aPINodeServiceClient) UploadAPINodeFile(ctx context.Context, in *UploadAPINodeFileRequest, opts ...grpc.CallOption) (*UploadAPINodeFileResponse, error) {
out := new(UploadAPINodeFileResponse)
err := c.cc.Invoke(ctx, "/pb.APINodeService/uploadAPINodeFile", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// APINodeServiceServer is the server API for APINodeService service. // APINodeServiceServer is the server API for APINodeService service.
type APINodeServiceServer interface { type APINodeServiceServer interface {
// 创建API节点 // 创建API节点
@@ -1663,6 +1856,8 @@ type APINodeServiceServer interface {
CountAllEnabledAPINodesWithSSLCertId(context.Context, *CountAllEnabledAPINodesWithSSLCertIdRequest) (*RPCCountResponse, error) CountAllEnabledAPINodesWithSSLCertId(context.Context, *CountAllEnabledAPINodesWithSSLCertIdRequest) (*RPCCountResponse, error)
// 修改调试模式状态 // 修改调试模式状态
DebugAPINode(context.Context, *DebugAPINodeRequest) (*RPCSuccess, error) DebugAPINode(context.Context, *DebugAPINodeRequest) (*RPCSuccess, error)
// 上传新版API节点文件
UploadAPINodeFile(context.Context, *UploadAPINodeFileRequest) (*UploadAPINodeFileResponse, error)
} }
// UnimplementedAPINodeServiceServer can be embedded to have forward compatible implementations. // UnimplementedAPINodeServiceServer can be embedded to have forward compatible implementations.
@@ -1705,6 +1900,9 @@ func (*UnimplementedAPINodeServiceServer) CountAllEnabledAPINodesWithSSLCertId(c
func (*UnimplementedAPINodeServiceServer) DebugAPINode(context.Context, *DebugAPINodeRequest) (*RPCSuccess, error) { func (*UnimplementedAPINodeServiceServer) DebugAPINode(context.Context, *DebugAPINodeRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method DebugAPINode not implemented") return nil, status.Errorf(codes.Unimplemented, "method DebugAPINode not implemented")
} }
func (*UnimplementedAPINodeServiceServer) UploadAPINodeFile(context.Context, *UploadAPINodeFileRequest) (*UploadAPINodeFileResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UploadAPINodeFile not implemented")
}
func RegisterAPINodeServiceServer(s *grpc.Server, srv APINodeServiceServer) { func RegisterAPINodeServiceServer(s *grpc.Server, srv APINodeServiceServer) {
s.RegisterService(&_APINodeService_serviceDesc, srv) s.RegisterService(&_APINodeService_serviceDesc, srv)
@@ -1926,6 +2124,24 @@ func _APINodeService_DebugAPINode_Handler(srv interface{}, ctx context.Context,
return interceptor(ctx, in, info, handler) return interceptor(ctx, in, info, handler)
} }
func _APINodeService_UploadAPINodeFile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UploadAPINodeFileRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(APINodeServiceServer).UploadAPINodeFile(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.APINodeService/UploadAPINodeFile",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(APINodeServiceServer).UploadAPINodeFile(ctx, req.(*UploadAPINodeFileRequest))
}
return interceptor(ctx, in, info, handler)
}
var _APINodeService_serviceDesc = grpc.ServiceDesc{ var _APINodeService_serviceDesc = grpc.ServiceDesc{
ServiceName: "pb.APINodeService", ServiceName: "pb.APINodeService",
HandlerType: (*APINodeServiceServer)(nil), HandlerType: (*APINodeServiceServer)(nil),
@@ -1978,6 +2194,10 @@ var _APINodeService_serviceDesc = grpc.ServiceDesc{
MethodName: "debugAPINode", MethodName: "debugAPINode",
Handler: _APINodeService_DebugAPINode_Handler, Handler: _APINodeService_DebugAPINode_Handler,
}, },
{
MethodName: "uploadAPINodeFile",
Handler: _APINodeService_UploadAPINodeFile_Handler,
},
}, },
Streams: []grpc.StreamDesc{}, Streams: []grpc.StreamDesc{},
Metadata: "service_api_node.proto", Metadata: "service_api_node.proto",
File diff suppressed because it is too large Load Diff
+680
View File
@@ -0,0 +1,680 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.19.4
// source: service_login_session.proto
package pb
import (
context "context"
proto "github.com/golang/protobuf/proto"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// 创建SESSION
type CreateLoginSessionRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Sid string `protobuf:"bytes,1,opt,name=sid,proto3" json:"sid,omitempty"` // SESSION ID
Ip string `protobuf:"bytes,2,opt,name=ip,proto3" json:"ip,omitempty"` // 登录IP
ExpiresAt int64 `protobuf:"varint,3,opt,name=expiresAt,proto3" json:"expiresAt,omitempty"` // 过期时间
}
func (x *CreateLoginSessionRequest) Reset() {
*x = CreateLoginSessionRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_login_session_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CreateLoginSessionRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateLoginSessionRequest) ProtoMessage() {}
func (x *CreateLoginSessionRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_login_session_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CreateLoginSessionRequest.ProtoReflect.Descriptor instead.
func (*CreateLoginSessionRequest) Descriptor() ([]byte, []int) {
return file_service_login_session_proto_rawDescGZIP(), []int{0}
}
func (x *CreateLoginSessionRequest) GetSid() string {
if x != nil {
return x.Sid
}
return ""
}
func (x *CreateLoginSessionRequest) GetIp() string {
if x != nil {
return x.Ip
}
return ""
}
func (x *CreateLoginSessionRequest) GetExpiresAt() int64 {
if x != nil {
return x.ExpiresAt
}
return 0
}
// 写入SESSION数据
type WriteLoginSessionValueRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Sid string `protobuf:"bytes,1,opt,name=sid,proto3" json:"sid,omitempty"`
Key string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
}
func (x *WriteLoginSessionValueRequest) Reset() {
*x = WriteLoginSessionValueRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_login_session_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *WriteLoginSessionValueRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*WriteLoginSessionValueRequest) ProtoMessage() {}
func (x *WriteLoginSessionValueRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_login_session_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use WriteLoginSessionValueRequest.ProtoReflect.Descriptor instead.
func (*WriteLoginSessionValueRequest) Descriptor() ([]byte, []int) {
return file_service_login_session_proto_rawDescGZIP(), []int{1}
}
func (x *WriteLoginSessionValueRequest) GetSid() string {
if x != nil {
return x.Sid
}
return ""
}
func (x *WriteLoginSessionValueRequest) GetKey() string {
if x != nil {
return x.Key
}
return ""
}
func (x *WriteLoginSessionValueRequest) GetValue() string {
if x != nil {
return x.Value
}
return ""
}
// 删除SESSION
type DeleteLoginSessionRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Sid string `protobuf:"bytes,1,opt,name=sid,proto3" json:"sid,omitempty"`
}
func (x *DeleteLoginSessionRequest) Reset() {
*x = DeleteLoginSessionRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_login_session_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteLoginSessionRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteLoginSessionRequest) ProtoMessage() {}
func (x *DeleteLoginSessionRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_login_session_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeleteLoginSessionRequest.ProtoReflect.Descriptor instead.
func (*DeleteLoginSessionRequest) Descriptor() ([]byte, []int) {
return file_service_login_session_proto_rawDescGZIP(), []int{2}
}
func (x *DeleteLoginSessionRequest) GetSid() string {
if x != nil {
return x.Sid
}
return ""
}
// 查找SESSION
type FindLoginSessionRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Sid string `protobuf:"bytes,1,opt,name=sid,proto3" json:"sid,omitempty"`
}
func (x *FindLoginSessionRequest) Reset() {
*x = FindLoginSessionRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_login_session_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindLoginSessionRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindLoginSessionRequest) ProtoMessage() {}
func (x *FindLoginSessionRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_login_session_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindLoginSessionRequest.ProtoReflect.Descriptor instead.
func (*FindLoginSessionRequest) Descriptor() ([]byte, []int) {
return file_service_login_session_proto_rawDescGZIP(), []int{3}
}
func (x *FindLoginSessionRequest) GetSid() string {
if x != nil {
return x.Sid
}
return ""
}
type FindLoginSessionResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
LoginSession *LoginSession `protobuf:"bytes,1,opt,name=loginSession,proto3" json:"loginSession,omitempty"`
}
func (x *FindLoginSessionResponse) Reset() {
*x = FindLoginSessionResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_service_login_session_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindLoginSessionResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindLoginSessionResponse) ProtoMessage() {}
func (x *FindLoginSessionResponse) ProtoReflect() protoreflect.Message {
mi := &file_service_login_session_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindLoginSessionResponse.ProtoReflect.Descriptor instead.
func (*FindLoginSessionResponse) Descriptor() ([]byte, []int) {
return file_service_login_session_proto_rawDescGZIP(), []int{4}
}
func (x *FindLoginSessionResponse) GetLoginSession() *LoginSession {
if x != nil {
return x.LoginSession
}
return nil
}
var File_service_login_session_proto protoreflect.FileDescriptor
var file_service_login_session_proto_rawDesc = []byte{
0x0a, 0x1b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f,
0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70,
0x62, 0x1a, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f,
0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x72, 0x70, 0x63, 0x5f,
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x5b,
0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73,
0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73,
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x69, 0x64, 0x12, 0x0e, 0x0a,
0x02, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x1c, 0x0a,
0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x22, 0x59, 0x0a, 0x1d, 0x57,
0x72, 0x69, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03,
0x73, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x69, 0x64, 0x12, 0x10,
0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x2d, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x03, 0x73, 0x69, 0x64, 0x22, 0x2b, 0x0a, 0x17, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x67,
0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x10, 0x0a, 0x03, 0x73, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73,
0x69, 0x64, 0x22, 0x50, 0x0a, 0x18, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53,
0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34,
0x0a, 0x0c, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53,
0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73,
0x73, 0x69, 0x6f, 0x6e, 0x32, 0xbb, 0x02, 0x0a, 0x13, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53, 0x65,
0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x43, 0x0a, 0x12,
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69,
0x6f, 0x6e, 0x12, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x6f,
0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73,
0x73, 0x12, 0x4b, 0x0a, 0x16, 0x77, 0x72, 0x69, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53,
0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x2e, 0x70, 0x62,
0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69,
0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e,
0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x43,
0x0a, 0x12, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73,
0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63,
0x65, 0x73, 0x73, 0x12, 0x4d, 0x0a, 0x10, 0x66, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x67, 0x69, 0x6e,
0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e,
0x64, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f,
0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x33,
}
var (
file_service_login_session_proto_rawDescOnce sync.Once
file_service_login_session_proto_rawDescData = file_service_login_session_proto_rawDesc
)
func file_service_login_session_proto_rawDescGZIP() []byte {
file_service_login_session_proto_rawDescOnce.Do(func() {
file_service_login_session_proto_rawDescData = protoimpl.X.CompressGZIP(file_service_login_session_proto_rawDescData)
})
return file_service_login_session_proto_rawDescData
}
var file_service_login_session_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
var file_service_login_session_proto_goTypes = []interface{}{
(*CreateLoginSessionRequest)(nil), // 0: pb.CreateLoginSessionRequest
(*WriteLoginSessionValueRequest)(nil), // 1: pb.WriteLoginSessionValueRequest
(*DeleteLoginSessionRequest)(nil), // 2: pb.DeleteLoginSessionRequest
(*FindLoginSessionRequest)(nil), // 3: pb.FindLoginSessionRequest
(*FindLoginSessionResponse)(nil), // 4: pb.FindLoginSessionResponse
(*LoginSession)(nil), // 5: pb.LoginSession
(*RPCSuccess)(nil), // 6: pb.RPCSuccess
}
var file_service_login_session_proto_depIdxs = []int32{
5, // 0: pb.FindLoginSessionResponse.loginSession:type_name -> pb.LoginSession
0, // 1: pb.LoginSessionService.createLoginSession:input_type -> pb.CreateLoginSessionRequest
1, // 2: pb.LoginSessionService.writeLoginSessionValue:input_type -> pb.WriteLoginSessionValueRequest
2, // 3: pb.LoginSessionService.deleteLoginSession:input_type -> pb.DeleteLoginSessionRequest
3, // 4: pb.LoginSessionService.findLoginSession:input_type -> pb.FindLoginSessionRequest
6, // 5: pb.LoginSessionService.createLoginSession:output_type -> pb.RPCSuccess
6, // 6: pb.LoginSessionService.writeLoginSessionValue:output_type -> pb.RPCSuccess
6, // 7: pb.LoginSessionService.deleteLoginSession:output_type -> pb.RPCSuccess
4, // 8: pb.LoginSessionService.findLoginSession:output_type -> pb.FindLoginSessionResponse
5, // [5:9] is the sub-list for method output_type
1, // [1:5] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
}
func init() { file_service_login_session_proto_init() }
func file_service_login_session_proto_init() {
if File_service_login_session_proto != nil {
return
}
file_models_model_login_session_proto_init()
file_models_rpc_messages_proto_init()
if !protoimpl.UnsafeEnabled {
file_service_login_session_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateLoginSessionRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_login_session_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*WriteLoginSessionValueRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_login_session_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteLoginSessionRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_login_session_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindLoginSessionRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_login_session_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindLoginSessionResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_service_login_session_proto_rawDesc,
NumEnums: 0,
NumMessages: 5,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_service_login_session_proto_goTypes,
DependencyIndexes: file_service_login_session_proto_depIdxs,
MessageInfos: file_service_login_session_proto_msgTypes,
}.Build()
File_service_login_session_proto = out.File
file_service_login_session_proto_rawDesc = nil
file_service_login_session_proto_goTypes = nil
file_service_login_session_proto_depIdxs = nil
}
// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConnInterface
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion6
// LoginSessionServiceClient is the client API for LoginSessionService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type LoginSessionServiceClient interface {
// 创建SESSION
CreateLoginSession(ctx context.Context, in *CreateLoginSessionRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 写入SESSION数据
WriteLoginSessionValue(ctx context.Context, in *WriteLoginSessionValueRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 删除SESSION
DeleteLoginSession(ctx context.Context, in *DeleteLoginSessionRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 查找SESSION
FindLoginSession(ctx context.Context, in *FindLoginSessionRequest, opts ...grpc.CallOption) (*FindLoginSessionResponse, error)
}
type loginSessionServiceClient struct {
cc grpc.ClientConnInterface
}
func NewLoginSessionServiceClient(cc grpc.ClientConnInterface) LoginSessionServiceClient {
return &loginSessionServiceClient{cc}
}
func (c *loginSessionServiceClient) CreateLoginSession(ctx context.Context, in *CreateLoginSessionRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, "/pb.LoginSessionService/createLoginSession", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *loginSessionServiceClient) WriteLoginSessionValue(ctx context.Context, in *WriteLoginSessionValueRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, "/pb.LoginSessionService/writeLoginSessionValue", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *loginSessionServiceClient) DeleteLoginSession(ctx context.Context, in *DeleteLoginSessionRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, "/pb.LoginSessionService/deleteLoginSession", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *loginSessionServiceClient) FindLoginSession(ctx context.Context, in *FindLoginSessionRequest, opts ...grpc.CallOption) (*FindLoginSessionResponse, error) {
out := new(FindLoginSessionResponse)
err := c.cc.Invoke(ctx, "/pb.LoginSessionService/findLoginSession", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// LoginSessionServiceServer is the server API for LoginSessionService service.
type LoginSessionServiceServer interface {
// 创建SESSION
CreateLoginSession(context.Context, *CreateLoginSessionRequest) (*RPCSuccess, error)
// 写入SESSION数据
WriteLoginSessionValue(context.Context, *WriteLoginSessionValueRequest) (*RPCSuccess, error)
// 删除SESSION
DeleteLoginSession(context.Context, *DeleteLoginSessionRequest) (*RPCSuccess, error)
// 查找SESSION
FindLoginSession(context.Context, *FindLoginSessionRequest) (*FindLoginSessionResponse, error)
}
// UnimplementedLoginSessionServiceServer can be embedded to have forward compatible implementations.
type UnimplementedLoginSessionServiceServer struct {
}
func (*UnimplementedLoginSessionServiceServer) CreateLoginSession(context.Context, *CreateLoginSessionRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method CreateLoginSession not implemented")
}
func (*UnimplementedLoginSessionServiceServer) WriteLoginSessionValue(context.Context, *WriteLoginSessionValueRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method WriteLoginSessionValue not implemented")
}
func (*UnimplementedLoginSessionServiceServer) DeleteLoginSession(context.Context, *DeleteLoginSessionRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method DeleteLoginSession not implemented")
}
func (*UnimplementedLoginSessionServiceServer) FindLoginSession(context.Context, *FindLoginSessionRequest) (*FindLoginSessionResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindLoginSession not implemented")
}
func RegisterLoginSessionServiceServer(s *grpc.Server, srv LoginSessionServiceServer) {
s.RegisterService(&_LoginSessionService_serviceDesc, srv)
}
func _LoginSessionService_CreateLoginSession_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CreateLoginSessionRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(LoginSessionServiceServer).CreateLoginSession(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.LoginSessionService/CreateLoginSession",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(LoginSessionServiceServer).CreateLoginSession(ctx, req.(*CreateLoginSessionRequest))
}
return interceptor(ctx, in, info, handler)
}
func _LoginSessionService_WriteLoginSessionValue_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(WriteLoginSessionValueRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(LoginSessionServiceServer).WriteLoginSessionValue(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.LoginSessionService/WriteLoginSessionValue",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(LoginSessionServiceServer).WriteLoginSessionValue(ctx, req.(*WriteLoginSessionValueRequest))
}
return interceptor(ctx, in, info, handler)
}
func _LoginSessionService_DeleteLoginSession_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeleteLoginSessionRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(LoginSessionServiceServer).DeleteLoginSession(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.LoginSessionService/DeleteLoginSession",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(LoginSessionServiceServer).DeleteLoginSession(ctx, req.(*DeleteLoginSessionRequest))
}
return interceptor(ctx, in, info, handler)
}
func _LoginSessionService_FindLoginSession_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindLoginSessionRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(LoginSessionServiceServer).FindLoginSession(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.LoginSessionService/FindLoginSession",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(LoginSessionServiceServer).FindLoginSession(ctx, req.(*FindLoginSessionRequest))
}
return interceptor(ctx, in, info, handler)
}
var _LoginSessionService_serviceDesc = grpc.ServiceDesc{
ServiceName: "pb.LoginSessionService",
HandlerType: (*LoginSessionServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "createLoginSession",
Handler: _LoginSessionService_CreateLoginSession_Handler,
},
{
MethodName: "writeLoginSessionValue",
Handler: _LoginSessionService_WriteLoginSessionValue_Handler,
},
{
MethodName: "deleteLoginSession",
Handler: _LoginSessionService_DeleteLoginSession_Handler,
},
{
MethodName: "findLoginSession",
Handler: _LoginSessionService_FindLoginSession_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "service_login_session.proto",
}
+62 -31
View File
@@ -35,12 +35,13 @@ type CreateNodeIPAddressRequest struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
NodeId int64 `protobuf:"varint,1,opt,name=nodeId,proto3" json:"nodeId,omitempty"` NodeId int64 `protobuf:"varint,1,opt,name=nodeId,proto3" json:"nodeId,omitempty"` // 节点ID
Role string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"` Role string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"` // 角色:node:边缘节点,dns:智能DNS节点
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` // 名称
Ip string `protobuf:"bytes,4,opt,name=ip,proto3" json:"ip,omitempty"` Ip string `protobuf:"bytes,4,opt,name=ip,proto3" json:"ip,omitempty"` // IP地址
CanAccess bool `protobuf:"varint,5,opt,name=canAccess,proto3" json:"canAccess,omitempty"` CanAccess bool `protobuf:"varint,5,opt,name=canAccess,proto3" json:"canAccess,omitempty"` // 是否能够访问
IsUp bool `protobuf:"varint,6,opt,name=isUp,proto3" json:"isUp,omitempty"` IsUp bool `protobuf:"varint,6,opt,name=isUp,proto3" json:"isUp,omitempty"` // 是否上线
NodeClusterIds []int64 `protobuf:"varint,7,rep,packed,name=nodeClusterIds,proto3" json:"nodeClusterIds,omitempty"` // 可选项,所属集群ID列表,如果没有指定,则表示应用于节点所属的所有集群
} }
func (x *CreateNodeIPAddressRequest) Reset() { func (x *CreateNodeIPAddressRequest) Reset() {
@@ -117,6 +118,13 @@ func (x *CreateNodeIPAddressRequest) GetIsUp() bool {
return false return false
} }
func (x *CreateNodeIPAddressRequest) GetNodeClusterIds() []int64 {
if x != nil {
return x.NodeClusterIds
}
return nil
}
type CreateNodeIPAddressResponse struct { type CreateNodeIPAddressResponse struct {
state protoimpl.MessageState state protoimpl.MessageState
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
@@ -177,6 +185,7 @@ type CreateNodeIPAddressesRequest struct {
CanAccess bool `protobuf:"varint,5,opt,name=canAccess,proto3" json:"canAccess,omitempty"` CanAccess bool `protobuf:"varint,5,opt,name=canAccess,proto3" json:"canAccess,omitempty"`
IsUp bool `protobuf:"varint,6,opt,name=isUp,proto3" json:"isUp,omitempty"` IsUp bool `protobuf:"varint,6,opt,name=isUp,proto3" json:"isUp,omitempty"`
GroupValue string `protobuf:"bytes,7,opt,name=groupValue,proto3" json:"groupValue,omitempty"` GroupValue string `protobuf:"bytes,7,opt,name=groupValue,proto3" json:"groupValue,omitempty"`
NodeClusterIds []int64 `protobuf:"varint,8,rep,packed,name=nodeClusterIds,proto3" json:"nodeClusterIds,omitempty"` // 可选项,所属集群ID列表,如果没有指定,则表示应用于节点所属的所有集群
} }
func (x *CreateNodeIPAddressesRequest) Reset() { func (x *CreateNodeIPAddressesRequest) Reset() {
@@ -260,6 +269,13 @@ func (x *CreateNodeIPAddressesRequest) GetGroupValue() string {
return "" return ""
} }
func (x *CreateNodeIPAddressesRequest) GetNodeClusterIds() []int64 {
if x != nil {
return x.NodeClusterIds
}
return nil
}
type CreateNodeIPAddressesResponse struct { type CreateNodeIPAddressesResponse struct {
state protoimpl.MessageState state protoimpl.MessageState
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
@@ -313,12 +329,13 @@ type UpdateNodeIPAddressRequest struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
NodeIPAddressId int64 `protobuf:"varint,1,opt,name=nodeIPAddressId,proto3" json:"nodeIPAddressId,omitempty"` NodeIPAddressId int64 `protobuf:"varint,1,opt,name=nodeIPAddressId,proto3" json:"nodeIPAddressId,omitempty"` // IP地址ID
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
Ip string `protobuf:"bytes,3,opt,name=ip,proto3" json:"ip,omitempty"` Ip string `protobuf:"bytes,3,opt,name=ip,proto3" json:"ip,omitempty"`
CanAccess bool `protobuf:"varint,4,opt,name=canAccess,proto3" json:"canAccess,omitempty"` CanAccess bool `protobuf:"varint,4,opt,name=canAccess,proto3" json:"canAccess,omitempty"` // 是否能够访问
IsOn bool `protobuf:"varint,5,opt,name=isOn,proto3" json:"isOn,omitempty"` IsOn bool `protobuf:"varint,5,opt,name=isOn,proto3" json:"isOn,omitempty"` // 是否启用
IsUp bool `protobuf:"varint,6,opt,name=isUp,proto3" json:"isUp,omitempty"` IsUp bool `protobuf:"varint,6,opt,name=isUp,proto3" json:"isUp,omitempty"` // 是否上线
ClusterIds []int64 `protobuf:"varint,7,rep,packed,name=clusterIds,proto3" json:"clusterIds,omitempty"` // 可选项,所属集群ID列表,如果没有指定,则表示应用于节点所属的所有集群
} }
func (x *UpdateNodeIPAddressRequest) Reset() { func (x *UpdateNodeIPAddressRequest) Reset() {
@@ -395,6 +412,13 @@ func (x *UpdateNodeIPAddressRequest) GetIsUp() bool {
return false return false
} }
func (x *UpdateNodeIPAddressRequest) GetClusterIds() []int64 {
if x != nil {
return x.ClusterIds
}
return nil
}
// 修改IP地址所属节点 // 修改IP地址所属节点
type UpdateNodeIPAddressNodeIdRequest struct { type UpdateNodeIPAddressNodeIdRequest struct {
state protoimpl.MessageState state protoimpl.MessageState
@@ -1149,7 +1173,7 @@ var file_service_node_ip_address_proto_rawDesc = []byte{
0x6c, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x6c, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f,
0x72, 0x70, 0x63, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x72, 0x70, 0x63, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x22, 0x9e, 0x01, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x74, 0x6f, 0x22, 0xc6, 0x01, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64,
0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x03, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x03, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c,
@@ -1159,29 +1183,34 @@ var file_service_node_ip_address_proto_rawDesc = []byte{
0x70, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x05, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x05,
0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12,
0x12, 0x0a, 0x04, 0x69, 0x73, 0x55, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x55, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69,
0x73, 0x55, 0x70, 0x22, 0x47, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x73, 0x55, 0x70, 0x12, 0x26, 0x0a, 0x0e, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74,
0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0e, 0x6e, 0x6f, 0x64,
0x73, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x47, 0x0a, 0x1b, 0x43,
0x65, 0x73, 0x73, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x6e, 0x6f, 0x64, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65,
0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x22, 0xc8, 0x01, 0x0a, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x6e, 0x6f,
0x1c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x18, 0x01, 0x20,
0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65,
0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x73, 0x73, 0x49, 0x64, 0x22, 0xf0, 0x01, 0x0a, 0x1c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e,
0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65,
0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18,
0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a,
0x06, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x69, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c,
0x70, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x18,
0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x55, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1c, 0x0a,
0x08, 0x52, 0x04, 0x69, 0x73, 0x55, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x67, 0x72, 0x6f, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x69,
0x75, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x4b, 0x0a, 0x1d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x73, 0x55, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x55, 0x70, 0x12,
0x1e, 0x0a, 0x0a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12,
0x26, 0x0a, 0x0e, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64,
0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0e, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75,
0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x4b, 0x0a, 0x1d, 0x43, 0x72, 0x65, 0x61, 0x74,
0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x6e, 0x6f, 0x64, 0x65,
0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03,
0x28, 0x03, 0x52, 0x10, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x28, 0x03, 0x52, 0x10, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
0x73, 0x49, 0x64, 0x73, 0x22, 0xb0, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x73, 0x49, 0x64, 0x73, 0x22, 0xd0, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e,
0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64,
0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x6e, 0x6f, 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x6e, 0x6f,
@@ -1192,7 +1221,9 @@ var file_service_node_ip_address_proto_rawDesc = []byte{
0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12,
0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69,
0x73, 0x4f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x55, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x73, 0x4f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x55, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28,
0x08, 0x52, 0x04, 0x69, 0x73, 0x55, 0x70, 0x22, 0x64, 0x0a, 0x20, 0x55, 0x70, 0x64, 0x61, 0x74, 0x08, 0x52, 0x04, 0x69, 0x73, 0x55, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74,
0x65, 0x72, 0x49, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x6c, 0x75,
0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x64, 0x0a, 0x20, 0x55, 0x70, 0x64, 0x61, 0x74,
0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4e, 0x6f, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4e, 0x6f,
0x64, 0x65, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x6e, 0x64, 0x65, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x6e,
0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x18, 0x01, 0x6f, 0x64, 0x65, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x18, 0x01,
+297 -54
View File
@@ -695,6 +695,166 @@ func (*UpdateAllNodeLogsReadRequest) Descriptor() ([]byte, []int) {
return file_service_node_log_proto_rawDescGZIP(), []int{9} return file_service_node_log_proto_rawDescGZIP(), []int{9}
} }
// 删除日志
type DeleteNodeLogsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
NodeClusterId int64 `protobuf:"varint,15,opt,name=nodeClusterId,proto3" json:"nodeClusterId,omitempty"`
NodeId int64 `protobuf:"varint,1,opt,name=nodeId,proto3" json:"nodeId,omitempty"`
Role string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
Offset int64 `protobuf:"varint,3,opt,name=offset,proto3" json:"offset,omitempty"`
Size int64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
DayFrom string `protobuf:"bytes,5,opt,name=dayFrom,proto3" json:"dayFrom,omitempty"`
DayTo string `protobuf:"bytes,6,opt,name=dayTo,proto3" json:"dayTo,omitempty"`
Keyword string `protobuf:"bytes,7,opt,name=keyword,proto3" json:"keyword,omitempty"`
Level string `protobuf:"bytes,8,opt,name=level,proto3" json:"level,omitempty"`
ServerId int64 `protobuf:"varint,9,opt,name=serverId,proto3" json:"serverId,omitempty"`
FixedState int32 `protobuf:"varint,10,opt,name=fixedState,proto3" json:"fixedState,omitempty"`
AllServers bool `protobuf:"varint,11,opt,name=allServers,proto3" json:"allServers,omitempty"` // 是否获取所有服务相关的日志
OriginId int64 `protobuf:"varint,12,opt,name=originId,proto3" json:"originId,omitempty"`
IsUnread bool `protobuf:"varint,13,opt,name=isUnread,proto3" json:"isUnread,omitempty"`
Tag string `protobuf:"bytes,14,opt,name=tag,proto3" json:"tag,omitempty"`
}
func (x *DeleteNodeLogsRequest) Reset() {
*x = DeleteNodeLogsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_node_log_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteNodeLogsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteNodeLogsRequest) ProtoMessage() {}
func (x *DeleteNodeLogsRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_node_log_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeleteNodeLogsRequest.ProtoReflect.Descriptor instead.
func (*DeleteNodeLogsRequest) Descriptor() ([]byte, []int) {
return file_service_node_log_proto_rawDescGZIP(), []int{10}
}
func (x *DeleteNodeLogsRequest) GetNodeClusterId() int64 {
if x != nil {
return x.NodeClusterId
}
return 0
}
func (x *DeleteNodeLogsRequest) GetNodeId() int64 {
if x != nil {
return x.NodeId
}
return 0
}
func (x *DeleteNodeLogsRequest) GetRole() string {
if x != nil {
return x.Role
}
return ""
}
func (x *DeleteNodeLogsRequest) GetOffset() int64 {
if x != nil {
return x.Offset
}
return 0
}
func (x *DeleteNodeLogsRequest) GetSize() int64 {
if x != nil {
return x.Size
}
return 0
}
func (x *DeleteNodeLogsRequest) GetDayFrom() string {
if x != nil {
return x.DayFrom
}
return ""
}
func (x *DeleteNodeLogsRequest) GetDayTo() string {
if x != nil {
return x.DayTo
}
return ""
}
func (x *DeleteNodeLogsRequest) GetKeyword() string {
if x != nil {
return x.Keyword
}
return ""
}
func (x *DeleteNodeLogsRequest) GetLevel() string {
if x != nil {
return x.Level
}
return ""
}
func (x *DeleteNodeLogsRequest) GetServerId() int64 {
if x != nil {
return x.ServerId
}
return 0
}
func (x *DeleteNodeLogsRequest) GetFixedState() int32 {
if x != nil {
return x.FixedState
}
return 0
}
func (x *DeleteNodeLogsRequest) GetAllServers() bool {
if x != nil {
return x.AllServers
}
return false
}
func (x *DeleteNodeLogsRequest) GetOriginId() int64 {
if x != nil {
return x.OriginId
}
return 0
}
func (x *DeleteNodeLogsRequest) GetIsUnread() bool {
if x != nil {
return x.IsUnread
}
return false
}
func (x *DeleteNodeLogsRequest) GetTag() string {
if x != nil {
return x.Tag
}
return ""
}
var File_service_node_log_proto protoreflect.FileDescriptor var File_service_node_log_proto protoreflect.FileDescriptor
var file_service_node_log_proto_rawDesc = []byte{ var file_service_node_log_proto_rawDesc = []byte{
@@ -777,43 +937,73 @@ var file_service_node_log_proto_rawDesc = []byte{
0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x1e, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x1e, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74,
0x65, 0x41, 0x6c, 0x6c, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x61, 0x64, 0x65, 0x41, 0x6c, 0x6c, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x61, 0x64,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x32, 0xb4, 0x04, 0x0a, 0x0e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x9b, 0x03, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65,
0x4c, 0x6f, 0x67, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x47, 0x0a, 0x0e, 0x63, 0x72, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x19, 0x2e, 0x70, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x49, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49,
0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12,
0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72,
0x4c, 0x6f, 0x67, 0x73, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20,
0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73,
0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x18, 0x0a, 0x07, 0x64, 0x61, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
0x4c, 0x6f, 0x67, 0x73, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x52, 0x07, 0x64, 0x61, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x61, 0x79,
0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x54, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x61, 0x79, 0x54, 0x6f, 0x12,
0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x66, 0x69, 0x78, 0x4e, 0x6f, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76,
0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x78, 0x4e, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12,
0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28,
0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x3b, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x66,
0x0a, 0x0e, 0x66, 0x69, 0x78, 0x41, 0x6c, 0x6c, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x69, 0x78, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52,
0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x78, 0x41, 0x6c, 0x6c, 0x4e, 0x6f, 0x64, 0x65, 0x0a, 0x66, 0x69, 0x78, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61,
0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x6c, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52,
0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x51, 0x0a, 0x16, 0x63, 0x0a, 0x61, 0x6c, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6f,
0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x6f, 0x64, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x49, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6f,
0x65, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, 0x55, 0x6e, 0x72,
0x41, 0x6c, 0x6c, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x65, 0x61, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x55, 0x6e, 0x72,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x65, 0x61, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09,
0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x52, 0x03, 0x74, 0x61, 0x67, 0x32, 0xf1, 0x04, 0x0a, 0x0e, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f,
0x0a, 0x12, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x47, 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x61,
0x52, 0x65, 0x61, 0x64, 0x12, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e,
0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65,
0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
0x65, 0x73, 0x73, 0x12, 0x49, 0x0a, 0x15, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x61, 0x64, 0x12, 0x20, 0x2e, 0x70, 0x65, 0x12, 0x3f, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f,
0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x67, 0x73, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x64,
0x6f, 0x67, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70,
0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x42, 0x06, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f,
0x67, 0x73, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65,
0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x70, 0x62,
0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x66, 0x69, 0x78, 0x4e, 0x6f, 0x64, 0x65,
0x4c, 0x6f, 0x67, 0x73, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x78, 0x4e, 0x6f, 0x64,
0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70,
0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x3b, 0x0a, 0x0e,
0x66, 0x69, 0x78, 0x41, 0x6c, 0x6c, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x19,
0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x78, 0x41, 0x6c, 0x6c, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f,
0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52,
0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x51, 0x0a, 0x16, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x4c,
0x6f, 0x67, 0x73, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c,
0x6c, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43,
0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x12,
0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65,
0x61, 0x64, 0x12, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x6f,
0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73,
0x73, 0x12, 0x49, 0x0a, 0x15, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x4e, 0x6f,
0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x61, 0x64, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67,
0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70,
0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x3b, 0x0a, 0x0e,
0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x19,
0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f,
0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52,
0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70,
0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
} }
var ( var (
@@ -828,7 +1018,7 @@ func file_service_node_log_proto_rawDescGZIP() []byte {
return file_service_node_log_proto_rawDescData return file_service_node_log_proto_rawDescData
} }
var file_service_node_log_proto_msgTypes = make([]protoimpl.MessageInfo, 10) var file_service_node_log_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
var file_service_node_log_proto_goTypes = []interface{}{ var file_service_node_log_proto_goTypes = []interface{}{
(*CreateNodeLogsRequest)(nil), // 0: pb.CreateNodeLogsRequest (*CreateNodeLogsRequest)(nil), // 0: pb.CreateNodeLogsRequest
(*CreateNodeLogsResponse)(nil), // 1: pb.CreateNodeLogsResponse (*CreateNodeLogsResponse)(nil), // 1: pb.CreateNodeLogsResponse
@@ -840,13 +1030,14 @@ var file_service_node_log_proto_goTypes = []interface{}{
(*CountAllUnreadNodeLogsRequest)(nil), // 7: pb.CountAllUnreadNodeLogsRequest (*CountAllUnreadNodeLogsRequest)(nil), // 7: pb.CountAllUnreadNodeLogsRequest
(*UpdateNodeLogsReadRequest)(nil), // 8: pb.UpdateNodeLogsReadRequest (*UpdateNodeLogsReadRequest)(nil), // 8: pb.UpdateNodeLogsReadRequest
(*UpdateAllNodeLogsReadRequest)(nil), // 9: pb.UpdateAllNodeLogsReadRequest (*UpdateAllNodeLogsReadRequest)(nil), // 9: pb.UpdateAllNodeLogsReadRequest
(*NodeLog)(nil), // 10: pb.NodeLog (*DeleteNodeLogsRequest)(nil), // 10: pb.DeleteNodeLogsRequest
(*RPCCountResponse)(nil), // 11: pb.RPCCountResponse (*NodeLog)(nil), // 11: pb.NodeLog
(*RPCSuccess)(nil), // 12: pb.RPCSuccess (*RPCCountResponse)(nil), // 12: pb.RPCCountResponse
(*RPCSuccess)(nil), // 13: pb.RPCSuccess
} }
var file_service_node_log_proto_depIdxs = []int32{ var file_service_node_log_proto_depIdxs = []int32{
10, // 0: pb.CreateNodeLogsRequest.nodeLogs:type_name -> pb.NodeLog 11, // 0: pb.CreateNodeLogsRequest.nodeLogs:type_name -> pb.NodeLog
10, // 1: pb.ListNodeLogsResponse.nodeLogs:type_name -> pb.NodeLog 11, // 1: pb.ListNodeLogsResponse.nodeLogs:type_name -> pb.NodeLog
0, // 2: pb.NodeLogService.createNodeLogs:input_type -> pb.CreateNodeLogsRequest 0, // 2: pb.NodeLogService.createNodeLogs:input_type -> pb.CreateNodeLogsRequest
2, // 3: pb.NodeLogService.countNodeLogs:input_type -> pb.CountNodeLogsRequest 2, // 3: pb.NodeLogService.countNodeLogs:input_type -> pb.CountNodeLogsRequest
3, // 4: pb.NodeLogService.listNodeLogs:input_type -> pb.ListNodeLogsRequest 3, // 4: pb.NodeLogService.listNodeLogs:input_type -> pb.ListNodeLogsRequest
@@ -855,16 +1046,18 @@ var file_service_node_log_proto_depIdxs = []int32{
7, // 7: pb.NodeLogService.countAllUnreadNodeLogs:input_type -> pb.CountAllUnreadNodeLogsRequest 7, // 7: pb.NodeLogService.countAllUnreadNodeLogs:input_type -> pb.CountAllUnreadNodeLogsRequest
8, // 8: pb.NodeLogService.updateNodeLogsRead:input_type -> pb.UpdateNodeLogsReadRequest 8, // 8: pb.NodeLogService.updateNodeLogsRead:input_type -> pb.UpdateNodeLogsReadRequest
9, // 9: pb.NodeLogService.updateAllNodeLogsRead:input_type -> pb.UpdateAllNodeLogsReadRequest 9, // 9: pb.NodeLogService.updateAllNodeLogsRead:input_type -> pb.UpdateAllNodeLogsReadRequest
1, // 10: pb.NodeLogService.createNodeLogs:output_type -> pb.CreateNodeLogsResponse 10, // 10: pb.NodeLogService.deleteNodeLogs:input_type -> pb.DeleteNodeLogsRequest
11, // 11: pb.NodeLogService.countNodeLogs:output_type -> pb.RPCCountResponse 1, // 11: pb.NodeLogService.createNodeLogs:output_type -> pb.CreateNodeLogsResponse
4, // 12: pb.NodeLogService.listNodeLogs:output_type -> pb.ListNodeLogsResponse 12, // 12: pb.NodeLogService.countNodeLogs:output_type -> pb.RPCCountResponse
12, // 13: pb.NodeLogService.fixNodeLogs:output_type -> pb.RPCSuccess 4, // 13: pb.NodeLogService.listNodeLogs:output_type -> pb.ListNodeLogsResponse
12, // 14: pb.NodeLogService.fixAllNodeLogs:output_type -> pb.RPCSuccess 13, // 14: pb.NodeLogService.fixNodeLogs:output_type -> pb.RPCSuccess
11, // 15: pb.NodeLogService.countAllUnreadNodeLogs:output_type -> pb.RPCCountResponse 13, // 15: pb.NodeLogService.fixAllNodeLogs:output_type -> pb.RPCSuccess
12, // 16: pb.NodeLogService.updateNodeLogsRead:output_type -> pb.RPCSuccess 12, // 16: pb.NodeLogService.countAllUnreadNodeLogs:output_type -> pb.RPCCountResponse
12, // 17: pb.NodeLogService.updateAllNodeLogsRead:output_type -> pb.RPCSuccess 13, // 17: pb.NodeLogService.updateNodeLogsRead:output_type -> pb.RPCSuccess
10, // [10:18] is the sub-list for method output_type 13, // 18: pb.NodeLogService.updateAllNodeLogsRead:output_type -> pb.RPCSuccess
2, // [2:10] is the sub-list for method input_type 13, // 19: pb.NodeLogService.deleteNodeLogs:output_type -> pb.RPCSuccess
11, // [11:20] is the sub-list for method output_type
2, // [2:11] is the sub-list for method input_type
2, // [2:2] is the sub-list for extension type_name 2, // [2:2] is the sub-list for extension type_name
2, // [2:2] is the sub-list for extension extendee 2, // [2:2] is the sub-list for extension extendee
0, // [0:2] is the sub-list for field type_name 0, // [0:2] is the sub-list for field type_name
@@ -998,6 +1191,18 @@ func file_service_node_log_proto_init() {
return nil return nil
} }
} }
file_service_node_log_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteNodeLogsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
} }
type x struct{} type x struct{}
out := protoimpl.TypeBuilder{ out := protoimpl.TypeBuilder{
@@ -1005,7 +1210,7 @@ func file_service_node_log_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(), GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_service_node_log_proto_rawDesc, RawDescriptor: file_service_node_log_proto_rawDesc,
NumEnums: 0, NumEnums: 0,
NumMessages: 10, NumMessages: 11,
NumExtensions: 0, NumExtensions: 0,
NumServices: 1, NumServices: 1,
}, },
@@ -1047,6 +1252,8 @@ type NodeLogServiceClient interface {
UpdateNodeLogsRead(ctx context.Context, in *UpdateNodeLogsReadRequest, opts ...grpc.CallOption) (*RPCSuccess, error) UpdateNodeLogsRead(ctx context.Context, in *UpdateNodeLogsReadRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 设置所有日志未已读 // 设置所有日志未已读
UpdateAllNodeLogsRead(ctx context.Context, in *UpdateAllNodeLogsReadRequest, opts ...grpc.CallOption) (*RPCSuccess, error) UpdateAllNodeLogsRead(ctx context.Context, in *UpdateAllNodeLogsReadRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 删除日志
DeleteNodeLogs(ctx context.Context, in *DeleteNodeLogsRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
} }
type nodeLogServiceClient struct { type nodeLogServiceClient struct {
@@ -1129,6 +1336,15 @@ func (c *nodeLogServiceClient) UpdateAllNodeLogsRead(ctx context.Context, in *Up
return out, nil return out, nil
} }
func (c *nodeLogServiceClient) DeleteNodeLogs(ctx context.Context, in *DeleteNodeLogsRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, "/pb.NodeLogService/deleteNodeLogs", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// NodeLogServiceServer is the server API for NodeLogService service. // NodeLogServiceServer is the server API for NodeLogService service.
type NodeLogServiceServer interface { type NodeLogServiceServer interface {
// 创建日志 // 创建日志
@@ -1147,6 +1363,8 @@ type NodeLogServiceServer interface {
UpdateNodeLogsRead(context.Context, *UpdateNodeLogsReadRequest) (*RPCSuccess, error) UpdateNodeLogsRead(context.Context, *UpdateNodeLogsReadRequest) (*RPCSuccess, error)
// 设置所有日志未已读 // 设置所有日志未已读
UpdateAllNodeLogsRead(context.Context, *UpdateAllNodeLogsReadRequest) (*RPCSuccess, error) UpdateAllNodeLogsRead(context.Context, *UpdateAllNodeLogsReadRequest) (*RPCSuccess, error)
// 删除日志
DeleteNodeLogs(context.Context, *DeleteNodeLogsRequest) (*RPCSuccess, error)
} }
// UnimplementedNodeLogServiceServer can be embedded to have forward compatible implementations. // UnimplementedNodeLogServiceServer can be embedded to have forward compatible implementations.
@@ -1177,6 +1395,9 @@ func (*UnimplementedNodeLogServiceServer) UpdateNodeLogsRead(context.Context, *U
func (*UnimplementedNodeLogServiceServer) UpdateAllNodeLogsRead(context.Context, *UpdateAllNodeLogsReadRequest) (*RPCSuccess, error) { func (*UnimplementedNodeLogServiceServer) UpdateAllNodeLogsRead(context.Context, *UpdateAllNodeLogsReadRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateAllNodeLogsRead not implemented") return nil, status.Errorf(codes.Unimplemented, "method UpdateAllNodeLogsRead not implemented")
} }
func (*UnimplementedNodeLogServiceServer) DeleteNodeLogs(context.Context, *DeleteNodeLogsRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method DeleteNodeLogs not implemented")
}
func RegisterNodeLogServiceServer(s *grpc.Server, srv NodeLogServiceServer) { func RegisterNodeLogServiceServer(s *grpc.Server, srv NodeLogServiceServer) {
s.RegisterService(&_NodeLogService_serviceDesc, srv) s.RegisterService(&_NodeLogService_serviceDesc, srv)
@@ -1326,6 +1547,24 @@ func _NodeLogService_UpdateAllNodeLogsRead_Handler(srv interface{}, ctx context.
return interceptor(ctx, in, info, handler) return interceptor(ctx, in, info, handler)
} }
func _NodeLogService_DeleteNodeLogs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeleteNodeLogsRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(NodeLogServiceServer).DeleteNodeLogs(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.NodeLogService/DeleteNodeLogs",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(NodeLogServiceServer).DeleteNodeLogs(ctx, req.(*DeleteNodeLogsRequest))
}
return interceptor(ctx, in, info, handler)
}
var _NodeLogService_serviceDesc = grpc.ServiceDesc{ var _NodeLogService_serviceDesc = grpc.ServiceDesc{
ServiceName: "pb.NodeLogService", ServiceName: "pb.NodeLogService",
HandlerType: (*NodeLogServiceServer)(nil), HandlerType: (*NodeLogServiceServer)(nil),
@@ -1362,6 +1601,10 @@ var _NodeLogService_serviceDesc = grpc.ServiceDesc{
MethodName: "updateAllNodeLogsRead", MethodName: "updateAllNodeLogsRead",
Handler: _NodeLogService_UpdateAllNodeLogsRead_Handler, Handler: _NodeLogService_UpdateAllNodeLogsRead_Handler,
}, },
{
MethodName: "deleteNodeLogs",
Handler: _NodeLogService_DeleteNodeLogs_Handler,
},
}, },
Streams: []grpc.StreamDesc{}, Streams: []grpc.StreamDesc{},
Metadata: "service_node_log.proto", Metadata: "service_node_log.proto",
+96 -58
View File
@@ -44,6 +44,7 @@ type CreateNSRecordRequest struct {
// Deprecated: Do not use. // Deprecated: Do not use.
NsRouteIds []int64 `protobuf:"varint,7,rep,packed,name=nsRouteIds,proto3" json:"nsRouteIds,omitempty"` NsRouteIds []int64 `protobuf:"varint,7,rep,packed,name=nsRouteIds,proto3" json:"nsRouteIds,omitempty"`
NsRouteCodes []string `protobuf:"bytes,8,rep,name=nsRouteCodes,proto3" json:"nsRouteCodes,omitempty"` // 路线代号 NsRouteCodes []string `protobuf:"bytes,8,rep,name=nsRouteCodes,proto3" json:"nsRouteCodes,omitempty"` // 路线代号
Weight int32 `protobuf:"varint,15,opt,name=weight,proto3" json:"weight,omitempty"` // 权重
MxPriority int32 `protobuf:"varint,9,opt,name=mxPriority,proto3" json:"mxPriority,omitempty"` // mx优先级 MxPriority int32 `protobuf:"varint,9,opt,name=mxPriority,proto3" json:"mxPriority,omitempty"` // mx优先级
SrvPriority int32 `protobuf:"varint,10,opt,name=srvPriority,proto3" json:"srvPriority,omitempty"` // SRV优先级 SrvPriority int32 `protobuf:"varint,10,opt,name=srvPriority,proto3" json:"srvPriority,omitempty"` // SRV优先级
SrvWeight int32 `protobuf:"varint,11,opt,name=srvWeight,proto3" json:"srvWeight,omitempty"` // SRV权重 SrvWeight int32 `protobuf:"varint,11,opt,name=srvWeight,proto3" json:"srvWeight,omitempty"` // SRV权重
@@ -141,6 +142,13 @@ func (x *CreateNSRecordRequest) GetNsRouteCodes() []string {
return nil return nil
} }
func (x *CreateNSRecordRequest) GetWeight() int32 {
if x != nil {
return x.Weight
}
return 0
}
func (x *CreateNSRecordRequest) GetMxPriority() int32 { func (x *CreateNSRecordRequest) GetMxPriority() int32 {
if x != nil { if x != nil {
return x.MxPriority return x.MxPriority
@@ -243,6 +251,7 @@ type CreateNSRecordsRequest struct {
Value string `protobuf:"bytes,5,opt,name=value,proto3" json:"value,omitempty"` Value string `protobuf:"bytes,5,opt,name=value,proto3" json:"value,omitempty"`
Ttl int32 `protobuf:"varint,6,opt,name=ttl,proto3" json:"ttl,omitempty"` Ttl int32 `protobuf:"varint,6,opt,name=ttl,proto3" json:"ttl,omitempty"`
NsRouteCodes []string `protobuf:"bytes,7,rep,name=nsRouteCodes,proto3" json:"nsRouteCodes,omitempty"` // 路线代号 NsRouteCodes []string `protobuf:"bytes,7,rep,name=nsRouteCodes,proto3" json:"nsRouteCodes,omitempty"` // 路线代号
Weight int32 `protobuf:"varint,14,opt,name=weight,proto3" json:"weight,omitempty"` // 权重
MxPriority int32 `protobuf:"varint,8,opt,name=mxPriority,proto3" json:"mxPriority,omitempty"` // mx优先级 MxPriority int32 `protobuf:"varint,8,opt,name=mxPriority,proto3" json:"mxPriority,omitempty"` // mx优先级
SrvPriority int32 `protobuf:"varint,9,opt,name=srvPriority,proto3" json:"srvPriority,omitempty"` // SRV优先级 SrvPriority int32 `protobuf:"varint,9,opt,name=srvPriority,proto3" json:"srvPriority,omitempty"` // SRV优先级
SrvWeight int32 `protobuf:"varint,10,opt,name=srvWeight,proto3" json:"srvWeight,omitempty"` // SRV权重 SrvWeight int32 `protobuf:"varint,10,opt,name=srvWeight,proto3" json:"srvWeight,omitempty"` // SRV权重
@@ -332,6 +341,13 @@ func (x *CreateNSRecordsRequest) GetNsRouteCodes() []string {
return nil return nil
} }
func (x *CreateNSRecordsRequest) GetWeight() int32 {
if x != nil {
return x.Weight
}
return 0
}
func (x *CreateNSRecordsRequest) GetMxPriority() int32 { func (x *CreateNSRecordsRequest) GetMxPriority() int32 {
if x != nil { if x != nil {
return x.MxPriority return x.MxPriority
@@ -877,6 +893,7 @@ type UpdateNSRecordRequest struct {
NsRouteIds []int64 `protobuf:"varint,7,rep,packed,name=nsRouteIds,proto3" json:"nsRouteIds,omitempty"` NsRouteIds []int64 `protobuf:"varint,7,rep,packed,name=nsRouteIds,proto3" json:"nsRouteIds,omitempty"`
IsOn bool `protobuf:"varint,8,opt,name=isOn,proto3" json:"isOn,omitempty"` IsOn bool `protobuf:"varint,8,opt,name=isOn,proto3" json:"isOn,omitempty"`
NsRouteCodes []string `protobuf:"bytes,9,rep,name=nsRouteCodes,proto3" json:"nsRouteCodes,omitempty"` // 路线代号 NsRouteCodes []string `protobuf:"bytes,9,rep,name=nsRouteCodes,proto3" json:"nsRouteCodes,omitempty"` // 路线代号
Weight int32 `protobuf:"varint,16,opt,name=weight,proto3" json:"weight,omitempty"` // 权重
MxPriority int32 `protobuf:"varint,10,opt,name=mxPriority,proto3" json:"mxPriority,omitempty"` // mx优先级 MxPriority int32 `protobuf:"varint,10,opt,name=mxPriority,proto3" json:"mxPriority,omitempty"` // mx优先级
SrvPriority int32 `protobuf:"varint,11,opt,name=srvPriority,proto3" json:"srvPriority,omitempty"` // SRV优先级 SrvPriority int32 `protobuf:"varint,11,opt,name=srvPriority,proto3" json:"srvPriority,omitempty"` // SRV优先级
SrvWeight int32 `protobuf:"varint,12,opt,name=srvWeight,proto3" json:"srvWeight,omitempty"` // SRV权重 SrvWeight int32 `protobuf:"varint,12,opt,name=srvWeight,proto3" json:"srvWeight,omitempty"` // SRV权重
@@ -981,6 +998,13 @@ func (x *UpdateNSRecordRequest) GetNsRouteCodes() []string {
return nil return nil
} }
func (x *UpdateNSRecordRequest) GetWeight() int32 {
if x != nil {
return x.Weight
}
return 0
}
func (x *UpdateNSRecordRequest) GetMxPriority() int32 { func (x *UpdateNSRecordRequest) GetMxPriority() int32 {
if x != nil { if x != nil {
return x.MxPriority return x.MxPriority
@@ -1841,6 +1865,7 @@ type ImportNSRecordsRequest_Record struct {
Value string `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"` Value string `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"`
Ttl int32 `protobuf:"varint,5,opt,name=ttl,proto3" json:"ttl,omitempty"` Ttl int32 `protobuf:"varint,5,opt,name=ttl,proto3" json:"ttl,omitempty"`
MxPriority int32 `protobuf:"varint,6,opt,name=mxPriority,proto3" json:"mxPriority,omitempty"` // MX优先级 MxPriority int32 `protobuf:"varint,6,opt,name=mxPriority,proto3" json:"mxPriority,omitempty"` // MX优先级
Weight int32 `protobuf:"varint,12,opt,name=weight,proto3" json:"weight,omitempty"` // 权重
SrvPriority int32 `protobuf:"varint,7,opt,name=srvPriority,proto3" json:"srvPriority,omitempty"` // SRV优先级 SrvPriority int32 `protobuf:"varint,7,opt,name=srvPriority,proto3" json:"srvPriority,omitempty"` // SRV优先级
SrvWeight int32 `protobuf:"varint,8,opt,name=srvWeight,proto3" json:"srvWeight,omitempty"` // SRV权重 SrvWeight int32 `protobuf:"varint,8,opt,name=srvWeight,proto3" json:"srvWeight,omitempty"` // SRV权重
SrvPort int32 `protobuf:"varint,9,opt,name=srvPort,proto3" json:"srvPort,omitempty"` // SRV端口 SrvPort int32 `protobuf:"varint,9,opt,name=srvPort,proto3" json:"srvPort,omitempty"` // SRV端口
@@ -1922,6 +1947,13 @@ func (x *ImportNSRecordsRequest_Record) GetMxPriority() int32 {
return 0 return 0
} }
func (x *ImportNSRecordsRequest_Record) GetWeight() int32 {
if x != nil {
return x.Weight
}
return 0
}
func (x *ImportNSRecordsRequest_Record) GetSrvPriority() int32 { func (x *ImportNSRecordsRequest_Record) GetSrvPriority() int32 {
if x != nil { if x != nil {
return x.SrvPriority return x.SrvPriority
@@ -1965,7 +1997,7 @@ var file_service_ns_record_proto_rawDesc = []byte{
0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x73, 0x5f, 0x72, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x73, 0x5f, 0x72,
0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x6d, 0x6f, 0x64, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x6d, 0x6f, 0x64,
0x65, 0x6c, 0x73, 0x2f, 0x72, 0x70, 0x63, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x65, 0x6c, 0x73, 0x2f, 0x72, 0x70, 0x63, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9d, 0x03, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb5, 0x03, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74,
0x65, 0x4e, 0x53, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x4e, 0x53, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x49, 0x64,
@@ -1980,35 +2012,38 @@ var file_service_ns_record_proto_rawDesc = []byte{
0x18, 0x07, 0x20, 0x03, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x6e, 0x73, 0x52, 0x6f, 0x18, 0x07, 0x20, 0x03, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x6e, 0x73, 0x52, 0x6f,
0x75, 0x74, 0x65, 0x49, 0x64, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x75, 0x74, 0x65, 0x49, 0x64, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x73, 0x52, 0x6f, 0x75, 0x74,
0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x73,
0x52, 0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x78, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65,
0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67,
0x6d, 0x78, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x72, 0x68, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x78, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79,
0x76, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x78, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69,
0x0b, 0x73, 0x72, 0x76, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x72, 0x76, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74,
0x73, 0x72, 0x76, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x72, 0x76, 0x50, 0x72, 0x69, 0x6f,
0x09, 0x73, 0x72, 0x76, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x72, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x72, 0x76, 0x57, 0x65, 0x69, 0x67, 0x68,
0x76, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, 0x72, 0x76, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x72, 0x76, 0x57, 0x65, 0x69, 0x67,
0x50, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x61, 0x61, 0x46, 0x6c, 0x61, 0x67, 0x18, 0x68, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x72, 0x76, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x0c, 0x20,
0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x61, 0x61, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x16, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, 0x72, 0x76, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07,
0x0a, 0x06, 0x63, 0x61, 0x61, 0x54, 0x61, 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x61, 0x61, 0x46, 0x6c, 0x61, 0x67, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63,
0x63, 0x61, 0x61, 0x54, 0x61, 0x67, 0x22, 0x38, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x61, 0x61, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x61, 0x61, 0x54, 0x61, 0x67,
0x4e, 0x53, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x61, 0x61, 0x54, 0x61, 0x67, 0x22, 0x38,
0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x64, 0x18, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6e, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x73, 0x52, 0x65,
0x22, 0xfc, 0x02, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x52, 0x65, 0x63, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6e, 0x73,
0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x64, 0x22, 0x94, 0x03, 0x0a, 0x16, 0x43, 0x72, 0x65,
0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75,
0x0a, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x49,
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69,
0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x6e, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x61, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x6d, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03,
0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74,
0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x10, 0x0a, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12,
0x03, 0x74, 0x74, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
0x22, 0x0a, 0x0c, 0x6e, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x06, 0x20, 0x01,
0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x28, 0x05, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x73, 0x52, 0x6f, 0x75,
0x64, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x78, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x6e,
0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x77,
0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x77, 0x65, 0x69,
0x67, 0x68, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x78, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74,
0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x78, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x78, 0x50, 0x72, 0x69, 0x6f, 0x72,
0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x72, 0x76, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x72, 0x76, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69,
0x74, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x72, 0x76, 0x50, 0x72, 0x69, 0x74, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x72, 0x76, 0x50, 0x72, 0x69,
@@ -2091,14 +2126,14 @@ var file_service_ns_record_proto_rawDesc = []byte{
0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x06, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x06,
0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73,
0x65, 0x72, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x65, 0x72, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72,
0x49, 0x64, 0x22, 0x9c, 0x03, 0x0a, 0x16, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4e, 0x53, 0x52, 0x49, 0x64, 0x22, 0xb4, 0x03, 0x0a, 0x16, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4e, 0x53, 0x52,
0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a,
0x09, 0x6e, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x09, 0x6e, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4e, 0x53, 0x52, 0x65, 0x32, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4e, 0x53, 0x52, 0x65,
0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x63, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x63,
0x6f, 0x72, 0x64, 0x52, 0x09, 0x6e, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x16, 0x6f, 0x72, 0x64, 0x52, 0x09, 0x6e, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x16,
0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x1a, 0xa8, 0x02, 0x0a, 0x06, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x1a, 0xc0, 0x02, 0x0a, 0x06, 0x52, 0x65, 0x63, 0x6f, 0x72,
0x64, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69,
0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
@@ -2108,32 +2143,35 @@ var file_service_ns_record_proto_rawDesc = []byte{
0x6c, 0x75, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x6c, 0x75, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05,
0x52, 0x03, 0x74, 0x74, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x78, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x78, 0x50, 0x72, 0x69, 0x6f, 0x72,
0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x78, 0x50, 0x72, 0x69, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x78, 0x50, 0x72, 0x69,
0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x72, 0x76, 0x50, 0x72, 0x69, 0x6f, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18,
0x72, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x72, 0x76, 0x50, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x20, 0x0a,
0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x72, 0x76, 0x57, 0x65, 0x0b, 0x73, 0x72, 0x76, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01,
0x69, 0x67, 0x68, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x72, 0x76, 0x57, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x72, 0x76, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12,
0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x72, 0x76, 0x50, 0x6f, 0x72, 0x74, 0x1c, 0x0a, 0x09, 0x73, 0x72, 0x76, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x08, 0x20, 0x01,
0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, 0x72, 0x76, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x28, 0x05, 0x52, 0x09, 0x73, 0x72, 0x76, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x18, 0x0a,
0x18, 0x0a, 0x07, 0x63, 0x61, 0x61, 0x46, 0x6c, 0x61, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x07, 0x73, 0x72, 0x76, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07,
0x52, 0x07, 0x63, 0x61, 0x61, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x61, 0x61, 0x73, 0x72, 0x76, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x61, 0x61, 0x46, 0x6c,
0x54, 0x61, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x61, 0x61, 0x54, 0x61, 0x61, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x61, 0x61, 0x46, 0x6c, 0x61,
0x67, 0x22, 0xb1, 0x03, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x52, 0x65, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x61, 0x61, 0x54, 0x61, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28,
0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x09, 0x52, 0x06, 0x63, 0x61, 0x61, 0x54, 0x61, 0x67, 0x22, 0xc9, 0x03, 0x0a, 0x15, 0x55, 0x70,
0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75,
0x0a, 0x6e, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49,
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6e, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72,
0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x64, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20,
0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70,
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a,
0x74, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x12, 0x22, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61,
0x0a, 0x6e, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x49, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x6c, 0x75, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05,
0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x6e, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x49, 0x64, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x12, 0x22, 0x0a, 0x0a, 0x6e, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65,
0x73, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x49, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x6e,
0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x49, 0x64, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f,
0x43, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x73, 0x52, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x22, 0x0a,
0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x78, 0x50, 0x0c, 0x6e, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x09, 0x20,
0x03, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x64, 0x65,
0x73, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28,
0x05, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x78, 0x50,
0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d,
0x78, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x72, 0x76, 0x78, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x72, 0x76,
0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b,
+54 -54
View File
@@ -4442,13 +4442,13 @@ type UploadServerHTTPRequestStatRequest_RegionCity struct {
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
ServerId int64 `protobuf:"varint,1,opt,name=serverId,proto3" json:"serverId,omitempty"` ServerId int64 `protobuf:"varint,1,opt,name=serverId,proto3" json:"serverId,omitempty"`
CountryName string `protobuf:"bytes,2,opt,name=countryName,proto3" json:"countryName,omitempty"`
ProvinceName string `protobuf:"bytes,3,opt,name=provinceName,proto3" json:"provinceName,omitempty"`
CityName string `protobuf:"bytes,4,opt,name=cityName,proto3" json:"cityName,omitempty"`
CountRequests int64 `protobuf:"varint,5,opt,name=countRequests,proto3" json:"countRequests,omitempty"` CountRequests int64 `protobuf:"varint,5,opt,name=countRequests,proto3" json:"countRequests,omitempty"`
Bytes int64 `protobuf:"varint,6,opt,name=bytes,proto3" json:"bytes,omitempty"` Bytes int64 `protobuf:"varint,6,opt,name=bytes,proto3" json:"bytes,omitempty"`
CountAttackRequests int64 `protobuf:"varint,7,opt,name=countAttackRequests,proto3" json:"countAttackRequests,omitempty"` CountAttackRequests int64 `protobuf:"varint,7,opt,name=countAttackRequests,proto3" json:"countAttackRequests,omitempty"`
AttackBytes int64 `protobuf:"varint,8,opt,name=attackBytes,proto3" json:"attackBytes,omitempty"` AttackBytes int64 `protobuf:"varint,8,opt,name=attackBytes,proto3" json:"attackBytes,omitempty"`
CountryId int64 `protobuf:"varint,9,opt,name=countryId,proto3" json:"countryId,omitempty"`
ProvinceId int64 `protobuf:"varint,10,opt,name=provinceId,proto3" json:"provinceId,omitempty"`
CityId int64 `protobuf:"varint,11,opt,name=cityId,proto3" json:"cityId,omitempty"`
} }
func (x *UploadServerHTTPRequestStatRequest_RegionCity) Reset() { func (x *UploadServerHTTPRequestStatRequest_RegionCity) Reset() {
@@ -4490,27 +4490,6 @@ func (x *UploadServerHTTPRequestStatRequest_RegionCity) GetServerId() int64 {
return 0 return 0
} }
func (x *UploadServerHTTPRequestStatRequest_RegionCity) GetCountryName() string {
if x != nil {
return x.CountryName
}
return ""
}
func (x *UploadServerHTTPRequestStatRequest_RegionCity) GetProvinceName() string {
if x != nil {
return x.ProvinceName
}
return ""
}
func (x *UploadServerHTTPRequestStatRequest_RegionCity) GetCityName() string {
if x != nil {
return x.CityName
}
return ""
}
func (x *UploadServerHTTPRequestStatRequest_RegionCity) GetCountRequests() int64 { func (x *UploadServerHTTPRequestStatRequest_RegionCity) GetCountRequests() int64 {
if x != nil { if x != nil {
return x.CountRequests return x.CountRequests
@@ -4539,14 +4518,35 @@ func (x *UploadServerHTTPRequestStatRequest_RegionCity) GetAttackBytes() int64 {
return 0 return 0
} }
func (x *UploadServerHTTPRequestStatRequest_RegionCity) GetCountryId() int64 {
if x != nil {
return x.CountryId
}
return 0
}
func (x *UploadServerHTTPRequestStatRequest_RegionCity) GetProvinceId() int64 {
if x != nil {
return x.ProvinceId
}
return 0
}
func (x *UploadServerHTTPRequestStatRequest_RegionCity) GetCityId() int64 {
if x != nil {
return x.CityId
}
return 0
}
type UploadServerHTTPRequestStatRequest_RegionProvider struct { type UploadServerHTTPRequestStatRequest_RegionProvider struct {
state protoimpl.MessageState state protoimpl.MessageState
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
ServerId int64 `protobuf:"varint,1,opt,name=serverId,proto3" json:"serverId,omitempty"` ServerId int64 `protobuf:"varint,1,opt,name=serverId,proto3" json:"serverId,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
Count int64 `protobuf:"varint,3,opt,name=count,proto3" json:"count,omitempty"` Count int64 `protobuf:"varint,3,opt,name=count,proto3" json:"count,omitempty"`
ProviderId int64 `protobuf:"varint,4,opt,name=providerId,proto3" json:"providerId,omitempty"`
} }
func (x *UploadServerHTTPRequestStatRequest_RegionProvider) Reset() { func (x *UploadServerHTTPRequestStatRequest_RegionProvider) Reset() {
@@ -4588,13 +4588,6 @@ func (x *UploadServerHTTPRequestStatRequest_RegionProvider) GetServerId() int64
return 0 return 0
} }
func (x *UploadServerHTTPRequestStatRequest_RegionProvider) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *UploadServerHTTPRequestStatRequest_RegionProvider) GetCount() int64 { func (x *UploadServerHTTPRequestStatRequest_RegionProvider) GetCount() int64 {
if x != nil { if x != nil {
return x.Count return x.Count
@@ -4602,6 +4595,13 @@ func (x *UploadServerHTTPRequestStatRequest_RegionProvider) GetCount() int64 {
return 0 return 0
} }
func (x *UploadServerHTTPRequestStatRequest_RegionProvider) GetProviderId() int64 {
if x != nil {
return x.ProviderId
}
return 0
}
type UploadServerHTTPRequestStatRequest_System struct { type UploadServerHTTPRequestStatRequest_System struct {
state protoimpl.MessageState state protoimpl.MessageState
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
@@ -5286,31 +5286,31 @@ var file_service_server_proto_rawDesc = []byte{
0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x48, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x48,
0x54, 0x54, 0x50, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x47, 0x54, 0x54, 0x50, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x47,
0x72, 0x6f, 0x75, 0x70, 0x52, 0x16, 0x68, 0x74, 0x74, 0x70, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x16, 0x68, 0x74, 0x74, 0x70, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61,
0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x1a, 0x9a, 0x02, 0x0a, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x1a, 0x8e, 0x02, 0x0a,
0x0a, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x69, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x0a, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x69, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x73,
0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73,
0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d,
0x75, 0x6e, 0x74, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x14, 0x0a,
0x76, 0x69, 0x6e, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79,
0x0c, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x74, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61,
0x08, 0x63, 0x69, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03,
0x08, 0x63, 0x69, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x52, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71,
0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x42,
0x52, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x79, 0x74, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61,
0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x72, 0x79, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x74, 0x72, 0x79, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x63,
0x28, 0x03, 0x52, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x69, 0x74, 0x79, 0x49, 0x64, 0x18,
0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61, 0x74, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x63, 0x69, 0x74, 0x79, 0x49, 0x64, 0x1a, 0x62, 0x0a,
0x74, 0x61, 0x63, 0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x1a, 0x56, 0x0a, 0x0e, 0x52, 0x65, 0x67, 0x0e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12,
0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63,
0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x1a, 0x68, 0x0a, 0x06, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18,
0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49,
0x64, 0x1a, 0x68, 0x0a, 0x06, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x73,
0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73,
0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76,
+112 -75
View File
@@ -86,6 +86,7 @@ type FindServerBandwidthStatsRequest struct {
ServerId int64 `protobuf:"varint,1,opt,name=serverId,proto3" json:"serverId,omitempty"` // 服务ID ServerId int64 `protobuf:"varint,1,opt,name=serverId,proto3" json:"serverId,omitempty"` // 服务ID
Month string `protobuf:"bytes,2,opt,name=month,proto3" json:"month,omitempty"` // YYYYMMmonth和day二选一 Month string `protobuf:"bytes,2,opt,name=month,proto3" json:"month,omitempty"` // YYYYMMmonth和day二选一
Day string `protobuf:"bytes,3,opt,name=day,proto3" json:"day,omitempty"` // YYYYMMDD Day string `protobuf:"bytes,3,opt,name=day,proto3" json:"day,omitempty"` // YYYYMMDD
Algo string `protobuf:"bytes,4,opt,name=algo,proto3" json:"algo,omitempty"` // 带宽算法,目前支持secondly和avg
} }
func (x *FindServerBandwidthStatsRequest) Reset() { func (x *FindServerBandwidthStatsRequest) Reset() {
@@ -141,6 +142,13 @@ func (x *FindServerBandwidthStatsRequest) GetDay() string {
return "" return ""
} }
func (x *FindServerBandwidthStatsRequest) GetAlgo() string {
if x != nil {
return x.Algo
}
return ""
}
type FindServerBandwidthStatsResponse struct { type FindServerBandwidthStatsResponse struct {
state protoimpl.MessageState state protoimpl.MessageState
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
@@ -196,6 +204,7 @@ type FindHourlyServerBandwidthStatsRequest struct {
ServerId int64 `protobuf:"varint,1,opt,name=serverId,proto3" json:"serverId,omitempty"` ServerId int64 `protobuf:"varint,1,opt,name=serverId,proto3" json:"serverId,omitempty"`
Hours int32 `protobuf:"varint,2,opt,name=hours,proto3" json:"hours,omitempty"` Hours int32 `protobuf:"varint,2,opt,name=hours,proto3" json:"hours,omitempty"`
Algo string `protobuf:"bytes,3,opt,name=algo,proto3" json:"algo,omitempty"` // 带宽算法,目前支持secondly和avg
} }
func (x *FindHourlyServerBandwidthStatsRequest) Reset() { func (x *FindHourlyServerBandwidthStatsRequest) Reset() {
@@ -244,6 +253,13 @@ func (x *FindHourlyServerBandwidthStatsRequest) GetHours() int32 {
return 0 return 0
} }
func (x *FindHourlyServerBandwidthStatsRequest) GetAlgo() string {
if x != nil {
return x.Algo
}
return ""
}
type FindHourlyServerBandwidthStatsResponse struct { type FindHourlyServerBandwidthStatsResponse struct {
state protoimpl.MessageState state protoimpl.MessageState
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
@@ -315,6 +331,7 @@ type FindDailyServerBandwidthStatsRequest struct {
ServerId int64 `protobuf:"varint,1,opt,name=serverId,proto3" json:"serverId,omitempty"` ServerId int64 `protobuf:"varint,1,opt,name=serverId,proto3" json:"serverId,omitempty"`
Days int32 `protobuf:"varint,2,opt,name=days,proto3" json:"days,omitempty"` Days int32 `protobuf:"varint,2,opt,name=days,proto3" json:"days,omitempty"`
Algo string `protobuf:"bytes,3,opt,name=algo,proto3" json:"algo,omitempty"` // 带宽算法,目前支持secondly和avg
} }
func (x *FindDailyServerBandwidthStatsRequest) Reset() { func (x *FindDailyServerBandwidthStatsRequest) Reset() {
@@ -363,6 +380,13 @@ func (x *FindDailyServerBandwidthStatsRequest) GetDays() int32 {
return 0 return 0
} }
func (x *FindDailyServerBandwidthStatsRequest) GetAlgo() string {
if x != nil {
return x.Algo
}
return ""
}
type FindDailyServerBandwidthStatsResponse struct { type FindDailyServerBandwidthStatsResponse struct {
state protoimpl.MessageState state protoimpl.MessageState
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
@@ -438,6 +462,7 @@ type FindDailyServerBandwidthStatsBetweenDaysRequest struct {
DayTo string `protobuf:"bytes,4,opt,name=dayTo,proto3" json:"dayTo,omitempty"` // 结束日期 YYYYMMDD DayTo string `protobuf:"bytes,4,opt,name=dayTo,proto3" json:"dayTo,omitempty"` // 结束日期 YYYYMMDD
Percentile int32 `protobuf:"varint,5,opt,name=percentile,proto3" json:"percentile,omitempty"` // 可选项,百分位(nth)带宽位置,0-100之间 Percentile int32 `protobuf:"varint,5,opt,name=percentile,proto3" json:"percentile,omitempty"` // 可选项,百分位(nth)带宽位置,0-100之间
NodeRegionId int64 `protobuf:"varint,6,opt,name=nodeRegionId,proto3" json:"nodeRegionId,omitempty"` // 区域ID,可选项(目前只有用户整体统计支持区域ID) NodeRegionId int64 `protobuf:"varint,6,opt,name=nodeRegionId,proto3" json:"nodeRegionId,omitempty"` // 区域ID,可选项(目前只有用户整体统计支持区域ID)
Algo string `protobuf:"bytes,7,opt,name=algo,proto3" json:"algo,omitempty"` // 带宽算法,目前支持secondly和avg
} }
func (x *FindDailyServerBandwidthStatsBetweenDaysRequest) Reset() { func (x *FindDailyServerBandwidthStatsBetweenDaysRequest) Reset() {
@@ -514,6 +539,13 @@ func (x *FindDailyServerBandwidthStatsBetweenDaysRequest) GetNodeRegionId() int6
return 0 return 0
} }
func (x *FindDailyServerBandwidthStatsBetweenDaysRequest) GetAlgo() string {
if x != nil {
return x.Algo
}
return ""
}
type FindDailyServerBandwidthStatsBetweenDaysResponse struct { type FindDailyServerBandwidthStatsBetweenDaysResponse struct {
state protoimpl.MessageState state protoimpl.MessageState
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
@@ -576,8 +608,8 @@ type FindHourlyServerBandwidthStatsResponse_Stat struct {
Day string `protobuf:"bytes,1,opt,name=day,proto3" json:"day,omitempty"` Day string `protobuf:"bytes,1,opt,name=day,proto3" json:"day,omitempty"`
Hour int32 `protobuf:"varint,2,opt,name=hour,proto3" json:"hour,omitempty"` Hour int32 `protobuf:"varint,2,opt,name=hour,proto3" json:"hour,omitempty"`
Bytes int64 `protobuf:"varint,3,opt,name=bytes,proto3" json:"bytes,omitempty"` Bytes int64 `protobuf:"varint,3,opt,name=bytes,proto3" json:"bytes,omitempty"` // 峰值字节/秒
Bits int64 `protobuf:"varint,4,opt,name=bits,proto3" json:"bits,omitempty"` Bits int64 `protobuf:"varint,4,opt,name=bits,proto3" json:"bits,omitempty"` // 峰值比特/秒
} }
func (x *FindHourlyServerBandwidthStatsResponse_Stat) Reset() { func (x *FindHourlyServerBandwidthStatsResponse_Stat) Reset() {
@@ -646,8 +678,8 @@ type FindDailyServerBandwidthStatsResponse_Stat struct {
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
Day string `protobuf:"bytes,1,opt,name=day,proto3" json:"day,omitempty"` Day string `protobuf:"bytes,1,opt,name=day,proto3" json:"day,omitempty"`
Bytes int64 `protobuf:"varint,3,opt,name=bytes,proto3" json:"bytes,omitempty"` Bytes int64 `protobuf:"varint,3,opt,name=bytes,proto3" json:"bytes,omitempty"` // 峰值字节/秒
Bits int64 `protobuf:"varint,4,opt,name=bits,proto3" json:"bits,omitempty"` Bits int64 `protobuf:"varint,4,opt,name=bits,proto3" json:"bits,omitempty"` // 峰值比特/秒
} }
func (x *FindDailyServerBandwidthStatsResponse_Stat) Reset() { func (x *FindDailyServerBandwidthStatsResponse_Stat) Reset() {
@@ -710,8 +742,8 @@ type FindDailyServerBandwidthStatsBetweenDaysResponse_Stat struct {
Day string `protobuf:"bytes,1,opt,name=day,proto3" json:"day,omitempty"` Day string `protobuf:"bytes,1,opt,name=day,proto3" json:"day,omitempty"`
TimeAt string `protobuf:"bytes,2,opt,name=timeAt,proto3" json:"timeAt,omitempty"` TimeAt string `protobuf:"bytes,2,opt,name=timeAt,proto3" json:"timeAt,omitempty"`
Bytes int64 `protobuf:"varint,3,opt,name=bytes,proto3" json:"bytes,omitempty"` // 字节/秒 Bytes int64 `protobuf:"varint,3,opt,name=bytes,proto3" json:"bytes,omitempty"` // 峰值字节/秒
Bits int64 `protobuf:"varint,4,opt,name=bits,proto3" json:"bits,omitempty"` // 比特/秒 Bits int64 `protobuf:"varint,4,opt,name=bits,proto3" json:"bits,omitempty"` // 峰值比特/秒
} }
func (x *FindDailyServerBandwidthStatsBetweenDaysResponse_Stat) Reset() { func (x *FindDailyServerBandwidthStatsBetweenDaysResponse_Stat) Reset() {
@@ -791,82 +823,87 @@ var file_service_server_bandwidth_stat_proto_rawDesc = []byte{
0x0b, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e,
0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x52, 0x14, 0x73, 0x65, 0x72, 0x76, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x52, 0x14, 0x73, 0x65, 0x72, 0x76,
0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73,
0x22, 0x65, 0x0a, 0x1f, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x22, 0x79, 0x0a, 0x1f, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61,
0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12,
0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01,
0x28, 0x09, 0x52, 0x03, 0x64, 0x61, 0x79, 0x22, 0x6f, 0x0a, 0x20, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x28, 0x09, 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x6c, 0x67, 0x6f, 0x18,
0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x6c, 0x67, 0x6f, 0x22, 0x6f, 0x0a, 0x20, 0x46,
0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x14, 0x73, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64,
0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x4b, 0x0a, 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64,
0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e,
0x61, 0x74, 0x52, 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64,
0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0x59, 0x0a, 0x25, 0x46, 0x69, 0x6e, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x52, 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61,
0x48, 0x6f, 0x75, 0x72, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0x6d, 0x0a, 0x25,
0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x46, 0x69, 0x6e, 0x64, 0x48, 0x6f, 0x75, 0x72, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65,
0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49,
0x05, 0x68, 0x6f, 0x75, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x68, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49,
0x75, 0x72, 0x73, 0x22, 0xb2, 0x02, 0x0a, 0x26, 0x46, 0x69, 0x6e, 0x64, 0x48, 0x6f, 0x75, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x68, 0x6f, 0x75, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x52, 0x05, 0x68, 0x6f, 0x75, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x6c, 0x67, 0x6f, 0x18,
0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x6c, 0x67, 0x6f, 0x22, 0xb2, 0x02, 0x0a, 0x26,
0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x48, 0x6f, 0x75, 0x72, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x48, 0x6f, 0x75, 0x72, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65,
0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18,
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x52, 0x05, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x48,
0x73, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x6f, 0x75, 0x72, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77,
0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x6e, 0x74, 0x69, 0x6c, 0x65, 0x12, 0x49, 0x0a, 0x07, 0x6e, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1e, 0x0a,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x48, 0x6f, 0x75, 0x72, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x05, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x12, 0x49, 0x0a,
0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x07, 0x6e, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f,
0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x52, 0x07, 0x6e, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x48, 0x6f, 0x75, 0x72, 0x6c, 0x79, 0x53, 0x65,
0x1a, 0x56, 0x0a, 0x04, 0x53, 0x74, 0x61, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f,
0x75, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x68, 0x6f, 0x75, 0x72, 0x12, 0x14,
0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62,
0x79, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01,
0x28, 0x03, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x22, 0x56, 0x0a, 0x24, 0x46, 0x69, 0x6e, 0x64,
0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77,
0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01,
0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04,
0x64, 0x61, 0x79, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x79, 0x73,
0x22, 0x9b, 0x02, 0x0a, 0x25, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x65,
0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61,
0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x05, 0x73, 0x74, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x52,
0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x07, 0x6e, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x1a, 0x56, 0x0a, 0x04, 0x53, 0x74, 0x61, 0x74,
0x69, 0x6e, 0x64, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64,
0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x75, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x52, 0x04, 0x68, 0x6f, 0x75, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18,
0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04,
0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x62, 0x69, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73,
0x12, 0x48, 0x0a, 0x07, 0x6e, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x22, 0x6a, 0x0a, 0x24, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x65, 0x72,
0x0b, 0x32, 0x2e, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74,
0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76,
0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76,
0x74, 0x52, 0x07, 0x6e, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x1a, 0x42, 0x0a, 0x04, 0x53, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x79, 0x73, 0x18, 0x02, 0x20, 0x01,
0x61, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x79, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x6c, 0x67, 0x6f,
0x03, 0x64, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x6c, 0x67, 0x6f, 0x22, 0x9b, 0x02, 0x0a,
0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x25, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x22, 0xd9, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65,
0x01, 0x0a, 0x2f, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x44,
0x61, 0x69, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69,
0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x2e, 0x53, 0x74, 0x61, 0x74, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a,
0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x12, 0x48, 0x0a, 0x07,
0x6e, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e,
0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76,
0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73,
0x42, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x44, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x52, 0x07, 0x6e,
0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x1a, 0x42, 0x0a, 0x04, 0x53, 0x74, 0x61, 0x74, 0x12, 0x10,
0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64, 0x61, 0x79,
0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52,
0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x61, 0x79, 0x46, 0x72, 0x6f, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73, 0x18, 0x04,
0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x61, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x22, 0xed, 0x01, 0x0a, 0x2f, 0x46,
0x12, 0x14, 0x0a, 0x05, 0x64, 0x61, 0x79, 0x54, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x69, 0x6e, 0x64, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61,
0x05, 0x64, 0x61, 0x79, 0x54, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x42, 0x65, 0x74, 0x77,
0x74, 0x69, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x65, 0x6e, 0x44, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16,
0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6e, 0x6f, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
0x64, 0x65, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xb4, 0x02, 0x0a, 0x30, 0x46, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x61, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x03, 0x20,
0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x61, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x14, 0x0a, 0x05,
0x64, 0x61, 0x79, 0x54, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x61, 0x79,
0x54, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65,
0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69,
0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e,
0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65,
0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x6c, 0x67, 0x6f, 0x18, 0x07,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x6c, 0x67, 0x6f, 0x22, 0xb4, 0x02, 0x0a, 0x30, 0x46,
0x69, 0x6e, 0x64, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x69, 0x6e, 0x64, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61,
0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x42, 0x65, 0x74, 0x77, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x42, 0x65, 0x74, 0x77,
0x65, 0x65, 0x6e, 0x44, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x65, 0x6e, 0x44, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+405 -395
View File
@@ -419,6 +419,7 @@ type UpdateUserRequest struct {
Remark string `protobuf:"bytes,8,opt,name=remark,proto3" json:"remark,omitempty"` Remark string `protobuf:"bytes,8,opt,name=remark,proto3" json:"remark,omitempty"`
IsOn bool `protobuf:"varint,9,opt,name=isOn,proto3" json:"isOn,omitempty"` IsOn bool `protobuf:"varint,9,opt,name=isOn,proto3" json:"isOn,omitempty"`
NodeClusterId int64 `protobuf:"varint,10,opt,name=nodeClusterId,proto3" json:"nodeClusterId,omitempty"` NodeClusterId int64 `protobuf:"varint,10,opt,name=nodeClusterId,proto3" json:"nodeClusterId,omitempty"`
BandwidthAlgo string `protobuf:"bytes,11,opt,name=bandwidthAlgo,proto3" json:"bandwidthAlgo,omitempty"`
} }
func (x *UpdateUserRequest) Reset() { func (x *UpdateUserRequest) Reset() {
@@ -523,6 +524,13 @@ func (x *UpdateUserRequest) GetNodeClusterId() int64 {
return 0 return 0
} }
func (x *UpdateUserRequest) GetBandwidthAlgo() string {
if x != nil {
return x.BandwidthAlgo
}
return ""
}
// 删除用户 // 删除用户
type DeleteUserRequest struct { type DeleteUserRequest struct {
state protoimpl.MessageState state protoimpl.MessageState
@@ -2934,7 +2942,7 @@ var file_service_user_proto_rawDesc = []byte{
0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x52, 0x65, 0x6a, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x52, 0x65, 0x6a,
0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x52,
0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x6a, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x6a,
0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x91, 0x02, 0x0a, 0x11, 0x55, 0x70, 0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0xb7, 0x02, 0x0a, 0x11, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e,
@@ -2951,411 +2959,413 @@ var file_service_user_proto_rawDesc = []byte{
0x61, 0x72, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x61, 0x72, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28,
0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x43,
0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d,
0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x22, 0x2b, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x24, 0x0a,
0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x0d, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x41, 0x6c, 0x67, 0x6f, 0x18, 0x0b,
0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x41,
0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x59, 0x0a, 0x1b, 0x43, 0x6f, 0x6c, 0x67, 0x6f, 0x22, 0x2b, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65,
0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72,
0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64,
0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x22, 0x59, 0x0a, 0x1b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62,
0x6f, 0x72, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x69, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x66, 0x79, 0x69, 0x6e, 0x67, 0x22, 0x81, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x56,
0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x65, 0x72, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b,
0x74, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67, 0x22, 0x81, 0x01, 0x0a, 0x17,
0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73,
0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f,
0x52, 0x0b, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72,
0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67,
0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79,
0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22, 0x3a, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20,
0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x3a, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73,
0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0x30, 0x0a, 0x16, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x05, 0x75,
0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x70, 0x62, 0x2e,
0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0x30, 0x0a, 0x16, 0x46,
0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x37, 0x0a, 0x17, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x1c, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x08, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72,
0x22, 0x4e, 0x0a, 0x18, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65,
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06,
0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73,
0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65,
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65,
0x22, 0x33, 0x0a, 0x19, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65,
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a,
0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65,
0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x4a, 0x0a, 0x10, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x73,
0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65,
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65,
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72,
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72,
0x64, 0x22, 0x59, 0x0a, 0x11, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12,
0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73,
0x4f, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20,
0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x79, 0x0a, 0x15,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x37, 0x0a,
0x08, 0x66, 0x75, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72,
0x08, 0x66, 0x75, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x62, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72,
0x69, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72,
0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x22, 0x4e, 0x0a, 0x18, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55,
0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0x68, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
0x65, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65,
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65,
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72,
0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72,
0x64, 0x22, 0x35, 0x0a, 0x1b, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72,
0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0xa7, 0x07, 0x0a, 0x1c, 0x43, 0x6f, 0x6d,
0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72,
0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x30, 0x0a,
0x13, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x42,
0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x6d, 0x6f, 0x6e, 0x74,
0x68, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12,
0x3c, 0x0a, 0x19, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, 0x65, 0x65, 0x6b, 0x42, 0x61,
0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01,
0x28, 0x03, 0x52, 0x19, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, 0x65, 0x65, 0x6b, 0x42,
0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x2c, 0x0a,
0x11, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x42, 0x79, 0x74,
0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x54,
0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x17, 0x64,
0x61, 0x69, 0x6c, 0x79, 0x50, 0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74,
0x68, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x17, 0x64, 0x61,
0x69, 0x6c, 0x79, 0x50, 0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68,
0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x5f, 0x0a, 0x11, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x54, 0x72,
0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x31, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65,
0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x2e, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53,
0x74, 0x61, 0x74, 0x52, 0x11, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69,
0x63, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x71, 0x0a, 0x17, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x50,
0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74,
0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d,
0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72,
0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x50,
0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74,
0x52, 0x17, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x50, 0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77,
0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x62, 0x61, 0x6e,
0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65,
0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74,
0x68, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x12, 0x38, 0x0a, 0x17, 0x62,
0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69,
0x6c, 0x65, 0x42, 0x69, 0x74, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x17, 0x62, 0x61,
0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c,
0x65, 0x42, 0x69, 0x74, 0x73, 0x1a, 0x88, 0x02, 0x0a, 0x10, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x54,
0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61,
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05,
0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74,
0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65,
0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x42,
0x79, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x42, 0x79,
0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63,
0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x30, 0x0a, 0x13,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x43, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x30,
0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
0x1a, 0x40, 0x0a, 0x16, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x50, 0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e,
0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61,
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05,
0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74,
0x65, 0x73, 0x22, 0x36, 0x0a, 0x1c, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f,
0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01,
0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x45, 0x0a, 0x1d, 0x46, 0x69, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73,
0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73,
0x72, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x6e, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x33, 0x0a, 0x19, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55,
0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x28, 0x03, 0x52, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20,
0x64, 0x22, 0x57, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x46, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x4a, 0x0a, 0x10, 0x4c,
0x6f, 0x67, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70,
0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70,
0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x59, 0x0a, 0x11, 0x4c, 0x6f, 0x67, 0x69, 0x6e,
0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06,
0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73,
0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x18, 0x02, 0x20, 0x01,
0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x22, 0x79, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72,
0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75,
0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65,
0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x75, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x75, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12,
0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c,
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0x68, 0x0a,
0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12,
0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70,
0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70,
0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x35, 0x0a, 0x1b, 0x43, 0x6f, 0x6d, 0x70, 0x6f,
0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0xa7,
0x07, 0x0a, 0x1c, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61,
0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18,
0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76,
0x65, 0x72, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x54, 0x72,
0x61, 0x66, 0x66, 0x69, 0x63, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03,
0x52, 0x13, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63,
0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x19, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79,
0x50, 0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x42, 0x79, 0x74,
0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x19, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c,
0x79, 0x50, 0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x42, 0x79,
0x74, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66,
0x66, 0x69, 0x63, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11,
0x64, 0x61, 0x69, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x42, 0x79, 0x74, 0x65,
0x73, 0x12, 0x38, 0x0a, 0x17, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x50, 0x65, 0x65, 0x6b, 0x42, 0x61,
0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01,
0x28, 0x03, 0x52, 0x17, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x50, 0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e,
0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x5f, 0x0a, 0x11, 0x64,
0x61, 0x69, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x73,
0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70,
0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x54, 0x72,
0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x52, 0x11, 0x64, 0x61, 0x69, 0x6c, 0x79,
0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x71, 0x0a, 0x17,
0x64, 0x61, 0x69, 0x6c, 0x79, 0x50, 0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64,
0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e,
0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61,
0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e,
0x44, 0x61, 0x69, 0x6c, 0x79, 0x50, 0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64,
0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x52, 0x17, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x50, 0x65, 0x65,
0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12,
0x30, 0x0a, 0x13, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x50, 0x65, 0x72, 0x63,
0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x62, 0x61,
0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c,
0x65, 0x12, 0x38, 0x0a, 0x17, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x50, 0x65,
0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x42, 0x69, 0x74, 0x73, 0x18, 0x09, 0x20, 0x01,
0x28, 0x03, 0x52, 0x17, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x50, 0x65, 0x72,
0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x42, 0x69, 0x74, 0x73, 0x1a, 0x88, 0x02, 0x0a, 0x10,
0x44, 0x61, 0x69, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74,
0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64,
0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x61, 0x63, 0x68,
0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63,
0x61, 0x63, 0x68, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x74,
0x74, 0x61, 0x63, 0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52,
0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20,
0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65,
0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52,
0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74,
0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28,
0x03, 0x52, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x1a, 0x40, 0x0a, 0x16, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x50,
0x65, 0x65, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74,
0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64,
0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x22, 0x36, 0x0a, 0x1c, 0x46, 0x69, 0x6e, 0x64,
0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49,
0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72,
0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64,
0x22, 0x45, 0x0a, 0x1d, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65,
0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x24, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c,
0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x22, 0x57, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74,
0x65, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c,
0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03,
0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73,
0x22, 0x61, 0x0a, 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65,
0x72, 0x73, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x64, 0x65,
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x72, 0x69,
0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x72,
0x69, 0x74, 0x65, 0x22, 0x31, 0x0a, 0x17, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46,
0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16,
0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x47, 0x0a, 0x18, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73,
0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x61, 0x0a, 0x1d, 0x55, 0x70, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x01,
0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x46, 0x65, 0x61, 0x74, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65,
0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x22,
0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x26, 0x0a, 0x24, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65,
0x09, 0x52, 0x0c, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x1c, 0x0a, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x72, 0x69, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x54, 0x0a, 0x25, 0x46, 0x69, 0x6e, 0x64, 0x41,
0x28, 0x08, 0x52, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x72, 0x69, 0x74, 0x65, 0x22, 0x31, 0x0a, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66,
0x17, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x12, 0x2b, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03,
0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74,
0x22, 0x47, 0x0a, 0x18, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x22, 0x1f, 0x0a,
0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x1d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62,
0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa9,
0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x06, 0x0a, 0x1e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c,
0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x22, 0x26, 0x0a, 0x24, 0x46, 0x69, 0x6e, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x64, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x18,
0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72,
0x74, 0x22, 0x54, 0x0a, 0x25, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x64, 0x61, 0x79, 0x55,
0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x73, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x63, 0x6f, 0x75, 0x6e,
0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x66, 0x65, 0x74, 0x54, 0x6f, 0x64, 0x61, 0x79, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x63,
0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x6f, 0x75, 0x6e, 0x74, 0x57, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x55, 0x73, 0x65, 0x72, 0x73, 0x18,
0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x57, 0x65, 0x65, 0x6b,
0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6c, 0x79, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52,
0x0e, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12,
0x34, 0x0a, 0x15, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x55,
0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x55, 0x73, 0x65, 0x72,
0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x65,
0x72, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67, 0x55, 0x73, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x01,
0x28, 0x03, 0x52, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x69,
0x6e, 0x67, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x4c, 0x0a, 0x0a, 0x64, 0x61, 0x69, 0x6c, 0x79,
0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x70, 0x62,
0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62,
0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e,
0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x61, 0x74, 0x52, 0x0a, 0x64, 0x61, 0x69, 0x6c, 0x79,
0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x33, 0x0a, 0x0d, 0x63, 0x70, 0x75, 0x4e, 0x6f, 0x64, 0x65,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x1f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70,
0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d, 0x63, 0x70, 0x75,
0x4e, 0x6f, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x10, 0x6d, 0x65,
0x6d, 0x6f, 0x72, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x20,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x61,
0x6c, 0x75, 0x65, 0x52, 0x10, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x0e, 0x6c, 0x6f, 0x61, 0x64, 0x4e, 0x6f, 0x64,
0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x21, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e,
0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x6c, 0x6f,
0x61, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x58, 0x0a, 0x0f,
0x74, 0x6f, 0x70, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18,
0x22, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f,
0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72,
0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa9, 0x06, 0x0a, 0x1e, 0x43, 0x6f, 0x6d, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69,
0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x63, 0x53, 0x74, 0x61, 0x74, 0x52, 0x0f, 0x74, 0x6f, 0x70, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69,
0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x63, 0x53, 0x74, 0x61, 0x74, 0x73, 0x1a, 0x33, 0x0a, 0x09, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53,
0x6f, 0x74, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x74, 0x61, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02,
0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x64, 0x61, 0x79, 0x55, 0x73, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x7d, 0x0a, 0x0b, 0x54,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x64, 0x61, 0x79, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73,
0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x57, 0x65, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72,
0x65, 0x6b, 0x6c, 0x79, 0x55, 0x73, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02,
0x10, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x57, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x55, 0x73, 0x65, 0x72, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24,
0x73, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18,
0x64, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75,
0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x15, 0x63, 0x6f, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20,
0x6e, 0x74, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x22, 0x3d, 0x0a, 0x1f, 0x43, 0x68,
0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73,
0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a,
0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x67, 0x55, 0x73, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x63, 0x6f, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x42, 0x0a, 0x20, 0x43, 0x68, 0x65,
0x75, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67, 0x55, 0x73, 0x65, 0x72, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65,
0x73, 0x12, 0x4c, 0x0a, 0x0a, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a,
0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x4f, 0x54, 0x50, 0x18, 0x01, 0x20, 0x01, 0x28,
0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x08, 0x52, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x4f, 0x54, 0x50, 0x22, 0x32, 0x0a,
0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x18, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e,
0x74, 0x61, 0x74, 0x52, 0x0a, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65,
0x33, 0x0a, 0x0d, 0x63, 0x70, 0x75, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49,
0x18, 0x1f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x64, 0x22, 0x5b, 0x0a, 0x19, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d, 0x63, 0x70, 0x75, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x61, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c,
0x6c, 0x75, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x10, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x4e, 0x6f, 0x0a, 0x09, 0x70, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x09, 0x52, 0x09, 0x70, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b,
0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x10, 0x6d, 0x70, 0x72, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x65, 0x6d, 0x6f, 0x72, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x09, 0x52, 0x0b, 0x70, 0x72, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x22, 0x52,
0x35, 0x0a, 0x0e, 0x6c, 0x6f, 0x61, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63,
0x73, 0x18, 0x21, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06,
0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x6c, 0x6f, 0x61, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x58, 0x0a, 0x0f, 0x74, 0x6f, 0x70, 0x54, 0x72, 0x61, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70,
0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x22, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79,
0x2e, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x70, 0x65, 0x22, 0x58, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72,
0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65,
0x6e, 0x73, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x52, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01,
0x0f, 0x74, 0x6f, 0x70, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x73, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72,
0x1a, 0x33, 0x0a, 0x09, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x61, 0x74, 0x12, 0x10, 0x0a, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x0b, 0x70, 0x72, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x22, 0x36, 0x0a, 0x1c,
0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x7d, 0x0a, 0x0b, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06,
0x53, 0x74, 0x61, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73,
0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x72, 0x49, 0x64, 0x22, 0x3d, 0x0a, 0x1d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65,
0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73,
0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c,
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x45, 0x6e, 0x61, 0x62,
0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x14, 0x6c, 0x65, 0x64, 0x22, 0x36, 0x0a, 0x1c, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72,
0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75,
0x79, 0x74, 0x65, 0x73, 0x22, 0x3d, 0x0a, 0x1f, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20,
0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x3d, 0x0a, 0x1d, 0x52,
0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53,
0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09,
0x69, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
0x09, 0x69, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x2d, 0x0a, 0x15, 0x43, 0x68,
0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0x30, 0x0a, 0x16, 0x43, 0x68, 0x65,
0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20,
0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x46, 0x0a, 0x28, 0x46,
0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45,
0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e,
0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e,
0x61, 0x6d, 0x65, 0x22, 0x42, 0x0a, 0x20, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x61, 0x6d, 0x65, 0x22, 0x41, 0x0a, 0x29, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56,
0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x69, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x72, 0x65, 0x4f, 0x54, 0x50, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x75, 0x69, 0x72, 0x65, 0x4f, 0x54, 0x50, 0x22, 0x32, 0x0a, 0x18, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x32, 0xe2, 0x10, 0x0a, 0x0b, 0x55, 0x73, 0x65, 0x72, 0x53,
0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x5b, 0x0a, 0x19, 0x46, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x70, 0x62,
0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x69, 0x63, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x55,
0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x69, 0x73, 0x65, 0x72, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65,
0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x69, 0x63, 0x65, 0x50, 0x72, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x70,
0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x72, 0x69, 0x62, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x22, 0x52, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x0a, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79,
0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1c, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x0a, 0x75,
0x0a, 0x09, 0x70, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x55,
0x09, 0x52, 0x09, 0x70, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x58, 0x0a, 0x1c, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73,
0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x12, 0x33, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15,
0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72,
0x69, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x72, 0x69, 0x63, 0x65,
0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x22, 0x36, 0x0a, 0x1c, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55,
0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x3d,
0x0a, 0x1d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65,
0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x1c, 0x0a, 0x09, 0x69, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01,
0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x36, 0x0a,
0x1c, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a,
0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75,
0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x3d, 0x0a, 0x1d, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x73,
0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x45, 0x6e, 0x61, 0x62,
0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x45, 0x6e, 0x61,
0x62, 0x6c, 0x65, 0x64, 0x22, 0x2d, 0x0a, 0x15, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65,
0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a,
0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d,
0x61, 0x69, 0x6c, 0x22, 0x30, 0x0a, 0x16, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72,
0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a,
0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65,
0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x46, 0x0a, 0x28, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65,
0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69,
0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x41, 0x0a,
0x29, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65,
0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61,
0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d,
0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c,
0x32, 0xe2, 0x10, 0x0a, 0x0b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
0x12, 0x3b, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15,
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a,
0x0c, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x12, 0x17, 0x2e,
0x70, 0x62, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x67, 0x69,
0x73, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x33, 0x0a, 0x0a, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15,
0x2e, 0x70, 0x62, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75,
0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4d, 0x0a, 0x14, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c,
0x73, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x1f, 0x2e,
0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c,
0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x0a, 0x64, 0x65, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14,
0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x10, 0x6c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62,
0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69,
0x4d, 0x0a, 0x14, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65,
0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45,
0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0f, 0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c,
0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64,
0x0a, 0x10, 0x6c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
0x72, 0x73, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62,
0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x50, 0x0a, 0x11, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72,
0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55,
0x0f, 0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65,
0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x72, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x12, 0x14,
0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x11, 0x63, 0x68, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71,
0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55,
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0e, 0x75,
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x2e,
0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66,
0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x6c, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50,
0x6f, 0x67, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x12, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x3d, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61,
0x67, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x1a, 0x2e, 0x70, 0x62,
0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x59, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x70, 0x6f,
0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12,
0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72,
0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65,
0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x66, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f,
0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x2e, 0x70, 0x62,
0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75,
0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e,
0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x43,
0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x43, 0x0a, 0x12, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65,
0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75,
0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4b, 0x0a, 0x16, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41,
0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12,
0x21, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x55, 0x73,
0x65, 0x72, 0x73, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65,
0x73, 0x73, 0x12, 0x3d, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x73, 0x73, 0x12, 0x4d, 0x0a, 0x10, 0x66, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65,
0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64,
0x65, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75,
0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65,
0x73, 0x12, 0x59, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x65, 0x12, 0x74, 0x0a, 0x1d, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72,
0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f,
0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x6e, 0x73, 0x12, 0x28, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x55,
0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69,
0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x70,
0x66, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73,
0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55,
0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e,
0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x12, 0x75, 0x70,
0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
0x12, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72,
0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12,
0x4b, 0x0a, 0x16, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72,
0x73, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x46, 0x65, 0x61,
0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70,
0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4d, 0x0a, 0x10,
0x66, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65,
0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e,
0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75,
0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x1d, 0x66,
0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x28, 0x2e, 0x70,
0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61,
0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x16, 0x63, 0x6f, 0x6d, 0x70, 0x6f,
0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72,
0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x64, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73,
0x65, 0x12, 0x5f, 0x0a, 0x16, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71,
0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73,
0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64,
0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x18, 0x63, 0x68, 0x65, 0x63,
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72,
0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55,
0x73, 0x65, 0x12, 0x65, 0x0a, 0x18, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x73, 0x65, 0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61,
0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x62, 0x2e, 0x43,
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x54, 0x50, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55,
0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x50, 0x0a, 0x11, 0x66, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65,
0x65, 0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73,
0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x11, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65,
0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72,
0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x65, 0x12, 0x45, 0x0a, 0x13, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50,
0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70,
0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x13, 0x75, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70,
0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50,
0x70, 0x65, 0x12, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x49, 0x0a, 0x15, 0x75, 0x70, 0x64, 0x61,
0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f,
0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x64, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65,
0x73, 0x73, 0x12, 0x49, 0x0a, 0x15, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75,
0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63,
0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x65, 0x73, 0x73, 0x12, 0x5c, 0x0a, 0x15, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72,
0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x2e, 0x70,
0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x5c, 0x0a, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65,
0x15, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21,
0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72,
0x6b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x72, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65,
0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e,
0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x72, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73,
0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70,
0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x62, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65,
0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x47, 0x0a, 0x0e, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69,
0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x6c, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72,
0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0e, 0x63, 0x68, 0x65, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x70,
0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c,
0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x21, 0x66, 0x69, 0x6e,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61,
0x6b, 0x55, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c,
0x73, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x21, 0x66, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69,
0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65,
0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x70,
0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69,
0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e,
0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x33,
} }
var ( var (
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,12 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
// 线
message ADNetwork {
int64 id = 1;
bool isOn = 2;
string name = 3;
string description = 4;
}
@@ -0,0 +1,21 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_ad_network.proto";
//
message ADPackage {
int64 id = 1;
bool isOn = 2;
int64 adNetworkId = 3;
int32 protectionBandwidthSize = 4;
string protectionBandwidthUnit = 5;
int32 serverBandwidthSize = 6;
string serverBandwidthUnit = 7;
ADNetwork adNetwork = 30;
string summary = 31; //
int64 countIdleADPackageInstances = 32; //
}
@@ -0,0 +1,25 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_node_cluster.proto";
import "models/model_ad_package.proto";
import "models/model_user.proto";
//
message ADPackageInstance {
int64 id = 1;
bool isOn = 2;
int64 adPackageId = 3;
int64 nodeClusterId = 4;
repeated int64 nodeIds = 5;
repeated string ipAddresses = 6;
int64 userId = 7; // ID
string userDayTo = 8; //
int64 userInstanceId = 9; // ID
NodeCluster nodeCluster = 30;
ADPackage adPackage = 31;
User user = 32;
}
@@ -0,0 +1,13 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
//
message ADPackagePeriod {
int64 id = 1;
bool isOn = 2;
int32 count = 3;
string unit = 4;
int32 months = 5;
}
@@ -0,0 +1,11 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
//
message ADPackagePrice {
int64 adPackageId = 1;
int64 adPackagePeriodId = 2;
double price = 3;
}
@@ -14,4 +14,6 @@ message AuthorityKey {
string company = 7; string company = 7;
int32 nodes = 8; int32 nodes = 8;
repeated string components = 9; repeated string components = 9;
string edition = 10;
string requestCode = 11;
} }
@@ -0,0 +1,16 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
// SESSION
message LoginSession {
int64 id = 1;
int64 adminId = 2;
int64 userId = 3;
string sid = 4;
bytes valuesJSON = 5;
string ip = 6;
int64 createdAt = 7;
int64 expiresAt = 8;
}
@@ -3,6 +3,8 @@ option go_package = "./pb";
package pb; package pb;
import "models/model_node_cluster.proto";
// //
message NodeIPAddress { message NodeIPAddress {
int64 id = 1; int64 id = 1;
@@ -18,4 +20,6 @@ message NodeIPAddress {
string role = 12; string role = 12;
string backupIP = 13; string backupIP = 13;
bool isHealthy = 14; bool isHealthy = 14;
repeated NodeCluster nodeClusters = 30;
} }
@@ -5,12 +5,13 @@ package pb;
// //
message ServerBandwidthStat { message ServerBandwidthStat {
int64 id = 1; int64 id = 1; // ID
int64 userId = 2; int64 userId = 2; // ID
int64 serverId = 3; int64 serverId = 3; //ID
string day = 4; string day = 4; // YYYYMMDD
string timeAt = 5; string timeAt = 5; // HHII
int64 bytes = 6; int64 bytes = 6; //
int64 bits = 7; int64 totalBytes = 9; //
int64 nodeRegionId = 8; int64 bits = 7; //
int64 nodeRegionId = 8; // ID
} }
+1
View File
@@ -25,6 +25,7 @@ message User {
bool isDeleted = 16; bool isDeleted = 16;
bool isIndividualIdentified = 17; bool isIndividualIdentified = 17;
bool isEnterpriseIdentified = 18; bool isEnterpriseIdentified = 18;
string bandwidthAlgo = 21; //
Login otpLogin = 19; // OTP认证 Login otpLogin = 19; // OTP认证
@@ -0,0 +1,29 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_ad_package_instance.proto";
import "models/model_user.proto";
//
message UserADInstance {
int64 id = 1;
int64 userId = 2;
int64 adPackageInstanceId = 3;
int64 adPackagePeriodId = 4;
int32 adPackagePeriodCount = 5;
string adPackagePeriodUnit = 6;
string dayFrom = 7; // YYYYMMDD
string dayTo = 8; // YYYYMMDD
int64 createdAt = 9;
int32 maxObjects = 10;
repeated string objectCodes = 11;
ADPackageInstance adPackageInstance = 30;
User user = 31;
bool canDelete = 32;
bool isAvailable = 33; //
int32 countObjects = 34; //
bytes objectsJSON = 35; // JSON
}
@@ -9,5 +9,5 @@ message UserBandwidthStat {
int64 userId = 2; int64 userId = 2;
string day = 3; string day = 3;
string timeAt = 4; string timeAt = 4;
int64 bytes = 5; int64 bytes = 5; //
} }
+78
View File
@@ -0,0 +1,78 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_ad_network.proto";
import "models/rpc_messages.proto";
// 线
service ADNetworkService {
// 线
rpc createADNetwork(CreateADNetworkRequest) returns (CreateADNetworkResponse);
// 线
rpc updateADNetwork(UpdateADNetworkRequest) returns (RPCSuccess);
// 线
rpc findADNetwork(FindADNetworkRequest) returns (FindADNetworkResponse);
// 线
rpc findAllADNetworks(FindAllADNetworkRequest) returns (FindAllADNetworkResponse);
// 线
rpc findAllAvailableADNetworks(FindAllAvailableADNetworksRequest) returns (FindAllAvailableADNetworksResponse);
// 线
rpc deleteADNetwork(DeleteADNetworkRequest) returns (RPCSuccess);
}
// 线
message CreateADNetworkRequest {
string name = 1;
string description = 2;
}
message CreateADNetworkResponse {
int64 adNetworkId = 1;
}
// 线
message UpdateADNetworkRequest {
int64 adNetworkId = 1;
bool isOn = 2;
string name = 3;
string description = 4;
}
// 线
message FindADNetworkRequest {
int64 adNetworkId = 1;
}
message FindADNetworkResponse {
ADNetwork adNetwork = 1;
}
// 线
message FindAllADNetworkRequest {
}
message FindAllADNetworkResponse {
repeated ADNetwork adNetworks = 1;
}
// 线
message FindAllAvailableADNetworksRequest {
}
message FindAllAvailableADNetworksResponse {
repeated ADNetwork adNetworks = 1;
}
// 线
message DeleteADNetworkRequest {
int64 adNetworkId = 1;
}
+102
View File
@@ -0,0 +1,102 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_ad_package.proto";
import "models/rpc_messages.proto";
//
service ADPackageService {
//
rpc createADPackage(CreateADPackageRequest) returns (CreateADPackageResponse);
//
rpc updateADPackage(UpdateADPackageRequest) returns (RPCSuccess);
//
rpc findADPackage(FindADPackageRequest) returns (FindADPackageResponse);
//
rpc countADPackages(CountADPackagesRequest) returns (RPCCountResponse);
//
rpc countAllIdleADPackages(CountAllIdleADPackages) returns (RPCCountResponse);
//
rpc listADPackages(ListADPackagesRequest) returns (ListADPackagesResponse);
//
rpc findAllIdleADPackages(FindAllIdleADPackagesRequest) returns (FindAllIdleADPackagesResponse);
//
rpc deleteADPackage(DeleteADPackageRequest) returns (RPCSuccess);
}
//
message CreateADPackageRequest {
int64 adNetworkId = 1;
int32 protectionBandwidthSize = 2;
string protectionBandwidthUnit = 3;
int32 serverBandwidthSize = 4;
string serverBandwidthUnit = 5;
}
message CreateADPackageResponse {
int64 adPackageId = 1;
}
//
message UpdateADPackageRequest {
int64 adPackageId = 1;
bool isOn = 2;
int64 adNetworkId = 3;
int32 protectionBandwidthSize = 4;
string protectionBandwidthUnit = 5;
int32 serverBandwidthSize = 6;
string serverBandwidthUnit = 7;
}
//
message FindADPackageRequest {
int64 adPackageId = 1;
}
message FindADPackageResponse {
ADPackage adPackage = 1;
}
//
message CountADPackagesRequest {
int64 adNetworkId = 1;
}
//
message CountAllIdleADPackages {
}
//
message ListADPackagesRequest {
int64 adNetworkId = 1;
int64 offset = 2;
int64 size = 3;
}
message ListADPackagesResponse {
repeated ADPackage adPackages = 1;
}
//
message FindAllIdleADPackagesRequest {
}
message FindAllIdleADPackagesResponse {
repeated ADPackage adPackages = 1;
}
//
message DeleteADPackageRequest {
int64 adPackageId = 1;
}
@@ -0,0 +1,105 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_ad_package_instance.proto";
import "models/rpc_messages.proto";
//
service ADPackageInstanceService {
//
rpc createADPackageInstance(CreateADPackageInstanceRequest) returns (CreateADPackageInstanceResponse);
//
rpc updateADPackageInstance(UpdateADPackageInstanceRequest) returns (RPCSuccess);
//
rpc findADPackageInstance(FindADPackageInstanceRequest) returns (FindADPackageInstanceResponse);
//
rpc findAllADPackageInstances(FindAllADPackageInstancesRequest) returns (FindAllADPackageInstancesResponse);
//
rpc deleteADPackageInstance(DeleteADPackageInstanceRequest) returns (RPCSuccess);
//
rpc countIdleADPackageInstances(CountIdleADPackageInstancesRequest) returns (RPCCountResponse);
//
rpc countADPackageInstances(CountADPackageInstancesRequest) returns (RPCCountResponse);
//
rpc listADPackageInstances(ListADPackageInstancesRequest) returns (ListADPackageInstancesResponse);
}
//
message CreateADPackageInstanceRequest {
int64 adPackageId = 1;
int64 nodeClusterId = 2;
repeated int64 nodeIds = 3;
repeated string ipAddresses = 4;
}
message CreateADPackageInstanceResponse {
int64 adPackageInstanceId = 1;
}
//
message UpdateADPackageInstanceRequest {
int64 adPackageInstanceId = 1;
int64 nodeClusterId = 2;
repeated int64 nodeIds = 3;
repeated string ipAddresses = 4;
bool isOn = 5;
}
//
message FindADPackageInstanceRequest {
int64 adPackageInstanceId = 1;
}
message FindADPackageInstanceResponse {
ADPackageInstance adPackageInstance = 1;
}
//
message FindAllADPackageInstancesRequest {
int64 adPackageId = 1;
}
message FindAllADPackageInstancesResponse {
repeated ADPackageInstance adPackageInstances = 1;
}
//
message DeleteADPackageInstanceRequest {
int64 adPackageInstanceId = 1;
}
//
message CountIdleADPackageInstancesRequest {
int64 adPackageId = 1;
}
//
message CountADPackageInstancesRequest {
int64 adNetworkId = 1; // 线
int64 adPackageId = 2; //
int64 userId = 3; // ID
string ip = 4; // IP
}
//
message ListADPackageInstancesRequest {
int64 adNetworkId = 1; // 线
int64 adPackageId = 2; //
int64 userId = 3; // ID
string ip = 4; // IP
int64 offset = 5;
int64 size = 6;
}
message ListADPackageInstancesResponse {
repeated ADPackageInstance adPackageInstances = 1;
}
@@ -0,0 +1,76 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_ad_package_period.proto";
import "models/rpc_messages.proto";
//
service ADPackagePeriodService {
//
rpc createADPackagePeriod(CreateADPackagePeriodRequest) returns (CreateADPackagePeriodResponse);
//
rpc updateADPackagePeriod(UpdateADPackagePeriodRequest) returns (RPCSuccess);
//
rpc deleteADPackagePeriod(DeleteADPackagePeriodRequest) returns (RPCSuccess);
//
rpc findADPackagePeriod(FindADPackagePeriodRequest) returns (FindADPackagePeriodResponse);
//
rpc findAllADPackagePeriods(FindAllADPackagePeriodsRequest) returns (FindAllADPackagePeriodsResponse);
//
rpc findAllAvailableADPackagePeriods(FindAllAvailableADPackagePeriodsRequest) returns (FindAllAvailableADPackagePeriodsResponse);
}
//
message CreateADPackagePeriodRequest {
int32 count = 1;
string unit = 2; // month | year
}
message CreateADPackagePeriodResponse {
int64 adPackagePeriodId = 1;
}
//
message UpdateADPackagePeriodRequest {
int64 adPackagePeriodId = 1;
bool isOn = 2;
}
//
message DeleteADPackagePeriodRequest {
int64 adPackagePeriodId = 1;
}
//
message FindADPackagePeriodRequest {
int64 adPackagePeriodId = 1;
}
message FindADPackagePeriodResponse {
ADPackagePeriod adPackagePeriod = 1;
}
//
message FindAllADPackagePeriodsRequest {
}
message FindAllADPackagePeriodsResponse {
repeated ADPackagePeriod adPackagePeriods = 1;
}
//
message FindAllAvailableADPackagePeriodsRequest {
}
message FindAllAvailableADPackagePeriodsResponse {
repeated ADPackagePeriod adPackagePeriods = 1;
}
@@ -0,0 +1,67 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_ad_package_price.proto";
import "models/rpc_messages.proto";
//
service ADPackagePriceService {
//
rpc updateADPackagePrice(UpdateADPackagePriceRequest) returns (RPCSuccess);
//
rpc findADPackagePrice(FindADPackagePriceRequest) returns (FindADPackagePriceResponse);
//
rpc countADPackagePrices(CountADPackagePricesRequest) returns (RPCCountResponse);
//
rpc findADPackagePrices(FindADPackagePricesRequest) returns (FindADPackagePricesResponse);
//
rpc findAllADPackagePrices(FindAllADPackagePricesRequest) returns (FindAllADPackagePricesResponse);
}
//
message UpdateADPackagePriceRequest {
int64 adPackageId = 1;
int64 adPackagePeriodId = 2;
double price = 3;
}
//
message FindADPackagePriceRequest {
int64 adPackageId = 1;
int64 adPackagePeriodId = 2;
int32 count = 3;
}
message FindADPackagePriceResponse {
double price = 1; //
double amount = 2; //
}
//
message CountADPackagePricesRequest {
int64 adPackageId = 1;
}
//
message FindADPackagePricesRequest {
int64 adPackageId = 1;
}
message FindADPackagePricesResponse {
repeated ADPackagePrice adPackagePrices = 1;
}
//
message FindAllADPackagePricesRequest {
}
message FindAllADPackagePricesResponse {
repeated ADPackagePrice adPackagePrices = 1;
}
+19 -1
View File
@@ -42,6 +42,9 @@ service APINodeService {
// //
rpc debugAPINode(DebugAPINodeRequest) returns (RPCSuccess); rpc debugAPINode(DebugAPINodeRequest) returns (RPCSuccess);
// API节点文件
rpc uploadAPINodeFile(UploadAPINodeFileRequest) returns (UploadAPINodeFileResponse);
} }
// API节点 // API节点
@@ -125,7 +128,9 @@ message FindCurrentAPINodeVersionRequest {
} }
message FindCurrentAPINodeVersionResponse { message FindCurrentAPINodeVersionResponse {
string version = 1; string version = 1; //
string os = 2; // linux
string arch = 3; //
} }
// API节点的信息 // API节点的信息
@@ -145,3 +150,16 @@ message CountAllEnabledAPINodesWithSSLCertIdRequest {
message DebugAPINodeRequest { message DebugAPINodeRequest {
bool debug = 1; bool debug = 1;
} }
// API节点文件
message UploadAPINodeFileRequest {
string filename = 1; //
string sum = 2; // SUM值
bytes chunkData = 3; //
bool isFirstChunk = 4; //
bool isLastChunk = 5; //
}
message UploadAPINodeFileResponse {
}
+22 -1
View File
@@ -101,6 +101,12 @@ service HTTPWebService {
// UAM设置 // UAM设置
rpc findHTTPWebUAM(FindHTTPWebUAMRequest) returns (FindHTTPWebUAMResponse); rpc findHTTPWebUAM(FindHTTPWebUAMRequest) returns (FindHTTPWebUAMResponse);
// CC设置
rpc updateHTTPWebCC(UpdateHTTPWebCCRequest) returns (RPCSuccess);
// UAM设置
rpc findHTTPWebCC(FindHTTPWebCCRequest) returns (FindHTTPWebCCResponse);
// //
rpc updateHTTPWebReferers(UpdateHTTPWebReferersRequest) returns (RPCSuccess); rpc updateHTTPWebReferers(UpdateHTTPWebReferersRequest) returns (RPCSuccess);
@@ -116,7 +122,7 @@ service HTTPWebService {
// Web配置 // Web配置
message CreateHTTPWebRequest { message CreateHTTPWebRequest {
bytes rootJSON = 1; bytes rootJSON = 1; //
} }
message CreateHTTPWebResponse { message CreateHTTPWebResponse {
@@ -321,6 +327,21 @@ message FindHTTPWebUAMResponse {
bytes uamJSON = 1; bytes uamJSON = 1;
} }
// CC设置
message UpdateHTTPWebCCRequest {
int64 httpWebId = 1;
bytes ccJSON = 2;
}
// UAM设置
message FindHTTPWebCCRequest {
int64 httpWebId = 1;
}
message FindHTTPWebCCResponse {
bytes ccJSON = 1;
}
// //
message UpdateHTTPWebReferersRequest { message UpdateHTTPWebReferersRequest {
int64 httpWebId = 1; int64 httpWebId = 1;
@@ -0,0 +1,50 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_login_session.proto";
import "models/rpc_messages.proto";
// SESSION服务
service LoginSessionService {
// SESSION
rpc createLoginSession(CreateLoginSessionRequest) returns (RPCSuccess);
// SESSION数据
rpc writeLoginSessionValue(WriteLoginSessionValueRequest) returns (RPCSuccess);
// SESSION
rpc deleteLoginSession(DeleteLoginSessionRequest) returns (RPCSuccess);
// SESSION
rpc findLoginSession(FindLoginSessionRequest) returns (FindLoginSessionResponse);
}
// SESSION
message CreateLoginSessionRequest {
string sid = 1; // SESSION ID
string ip = 2; // IP
int64 expiresAt = 3; //
}
// SESSION数据
message WriteLoginSessionValueRequest {
string sid = 1;
string key = 2;
string value = 3;
}
// SESSION
message DeleteLoginSessionRequest {
string sid = 1;
}
// SESSION
message FindLoginSessionRequest {
string sid = 1;
}
message FindLoginSessionResponse {
LoginSession loginSession = 1;
}
+13 -10
View File
@@ -47,12 +47,13 @@ service NodeIPAddressService {
// IP地址 // IP地址
message CreateNodeIPAddressRequest { message CreateNodeIPAddressRequest {
int64 nodeId = 1; int64 nodeId = 1; // ID
string role = 2; string role = 2; // nodednsDNS节点
string name = 3; string name = 3; //
string ip = 4; string ip = 4; // IP地址
bool canAccess = 5; bool canAccess = 5; // 访
bool isUp = 6; bool isUp = 6; // 线
repeated int64 nodeClusterIds = 7; // ID列表
} }
message CreateNodeIPAddressResponse { message CreateNodeIPAddressResponse {
@@ -68,6 +69,7 @@ message CreateNodeIPAddressesRequest {
bool canAccess = 5; bool canAccess = 5;
bool isUp = 6; bool isUp = 6;
string groupValue = 7; string groupValue = 7;
repeated int64 nodeClusterIds = 8; // ID列表
} }
message CreateNodeIPAddressesResponse { message CreateNodeIPAddressesResponse {
@@ -76,12 +78,13 @@ message CreateNodeIPAddressesResponse {
// IP地址 // IP地址
message UpdateNodeIPAddressRequest { message UpdateNodeIPAddressRequest {
int64 nodeIPAddressId = 1; int64 nodeIPAddressId = 1; // IP地址ID
string name = 2; string name = 2;
string ip = 3; string ip = 3;
bool canAccess = 4; bool canAccess = 4; // 访
bool isOn = 5; bool isOn = 5; //
bool isUp = 6; bool isUp = 6; // 线
repeated int64 clusterIds = 7; // ID列表
} }
// IP地址所属节点 // IP地址所属节点
+23
View File
@@ -31,6 +31,9 @@ service NodeLogService {
// //
rpc updateAllNodeLogsRead(UpdateAllNodeLogsReadRequest) returns (RPCSuccess); rpc updateAllNodeLogsRead(UpdateAllNodeLogsReadRequest) returns (RPCSuccess);
//
rpc deleteNodeLogs(DeleteNodeLogsRequest) returns (RPCSuccess);
} }
// //
@@ -109,3 +112,23 @@ message UpdateNodeLogsReadRequest {
message UpdateAllNodeLogsReadRequest { message UpdateAllNodeLogsReadRequest {
} }
//
message DeleteNodeLogsRequest {
int64 nodeClusterId = 15;
int64 nodeId = 1;
string role = 2;
int64 offset = 3;
int64 size = 4;
string dayFrom = 5;
string dayTo = 6;
string keyword = 7;
string level = 8;
int64 serverId = 9;
int32 fixedState = 10;
bool allServers = 11; //
int64 originId = 12;
bool isUnread = 13;
string tag = 14;
}
+4
View File
@@ -67,6 +67,7 @@ message CreateNSRecordRequest {
int32 ttl = 6; int32 ttl = 6;
repeated int64 nsRouteIds = 7 [deprecated = true]; repeated int64 nsRouteIds = 7 [deprecated = true];
repeated string nsRouteCodes = 8; // 线 repeated string nsRouteCodes = 8; // 线
int32 weight = 15; //
int32 mxPriority = 9; // mx优先级 int32 mxPriority = 9; // mx优先级
@@ -91,6 +92,7 @@ message CreateNSRecordsRequest {
string value = 5; string value = 5;
int32 ttl = 6; int32 ttl = 6;
repeated string nsRouteCodes = 7; // 线 repeated string nsRouteCodes = 7; // 线
int32 weight = 14; //
int32 mxPriority = 8; // mx优先级 int32 mxPriority = 8; // mx优先级
@@ -162,6 +164,7 @@ message ImportNSRecordsRequest {
string value = 4; string value = 4;
int32 ttl = 5; int32 ttl = 5;
int32 mxPriority = 6; // MX优先级 int32 mxPriority = 6; // MX优先级
int32 weight = 12; //
int32 srvPriority = 7; // SRV优先级 int32 srvPriority = 7; // SRV优先级
int32 srvWeight = 8; // SRV权重 int32 srvWeight = 8; // SRV权重
@@ -183,6 +186,7 @@ message UpdateNSRecordRequest {
repeated int64 nsRouteIds = 7 [deprecated = true]; repeated int64 nsRouteIds = 7 [deprecated = true];
bool isOn = 8; bool isOn = 8;
repeated string nsRouteCodes = 9; // 线 repeated string nsRouteCodes = 9; // 线
int32 weight = 16; //
int32 mxPriority = 10; // mx优先级 int32 mxPriority = 10; // mx优先级
+4 -4
View File
@@ -518,19 +518,19 @@ message UploadServerHTTPRequestStatRequest {
message RegionCity { message RegionCity {
int64 serverId = 1; int64 serverId = 1;
string countryName = 2;
string provinceName = 3;
string cityName = 4;
int64 countRequests = 5; int64 countRequests = 5;
int64 bytes = 6; int64 bytes = 6;
int64 countAttackRequests = 7; int64 countAttackRequests = 7;
int64 attackBytes = 8; int64 attackBytes = 8;
int64 countryId = 9;
int64 provinceId = 10;
int64 cityId = 11;
} }
message RegionProvider { message RegionProvider {
int64 serverId = 1; int64 serverId = 1;
string name = 2;
int64 count = 3; int64 count = 3;
int64 providerId = 4;
} }
message System { message System {
@@ -34,6 +34,7 @@ message FindServerBandwidthStatsRequest {
int64 serverId = 1; // ID int64 serverId = 1; // ID
string month = 2; // YYYYMMmonth和day二选一 string month = 2; // YYYYMMmonth和day二选一
string day = 3; // YYYYMMDD string day = 3; // YYYYMMDD
string algo = 4; // secondly和avg
} }
message FindServerBandwidthStatsResponse { message FindServerBandwidthStatsResponse {
@@ -44,6 +45,7 @@ message FindServerBandwidthStatsResponse {
message FindHourlyServerBandwidthStatsRequest { message FindHourlyServerBandwidthStatsRequest {
int64 serverId = 1; int64 serverId = 1;
int32 hours = 2; int32 hours = 2;
string algo = 3; // secondly和avg
} }
message FindHourlyServerBandwidthStatsResponse { message FindHourlyServerBandwidthStatsResponse {
@@ -54,8 +56,8 @@ message FindHourlyServerBandwidthStatsResponse {
message Stat { message Stat {
string day = 1; string day = 1;
int32 hour = 2; int32 hour = 2;
int64 bytes = 3; int64 bytes = 3; // /
int64 bits = 4; int64 bits = 4; // /
} }
} }
@@ -63,6 +65,7 @@ message FindHourlyServerBandwidthStatsResponse {
message FindDailyServerBandwidthStatsRequest { message FindDailyServerBandwidthStatsRequest {
int64 serverId = 1; int64 serverId = 1;
int32 days = 2; int32 days = 2;
string algo = 3; // secondly和avg
} }
message FindDailyServerBandwidthStatsResponse { message FindDailyServerBandwidthStatsResponse {
@@ -72,8 +75,8 @@ message FindDailyServerBandwidthStatsResponse {
message Stat { message Stat {
string day = 1; string day = 1;
int64 bytes = 3; int64 bytes = 3; // /
int64 bits = 4; int64 bits = 4; // /
} }
} }
@@ -85,6 +88,7 @@ message FindDailyServerBandwidthStatsBetweenDaysRequest {
string dayTo = 4; // YYYYMMDD string dayTo = 4; // YYYYMMDD
int32 percentile = 5; // nth0-100 int32 percentile = 5; // nth0-100
int64 nodeRegionId = 6; // IDID int64 nodeRegionId = 6; // IDID
string algo = 7; // secondly和avg
} }
message FindDailyServerBandwidthStatsBetweenDaysResponse { message FindDailyServerBandwidthStatsBetweenDaysResponse {
@@ -94,7 +98,7 @@ message FindDailyServerBandwidthStatsBetweenDaysResponse {
message Stat { message Stat {
string day = 1; string day = 1;
string timeAt = 2; string timeAt = 2;
int64 bytes = 3; // / int64 bytes = 3; // /
int64 bits = 4; // / int64 bits = 4; // /
} }
} }
+1
View File
@@ -144,6 +144,7 @@ message UpdateUserRequest {
string remark = 8; string remark = 8;
bool isOn = 9; bool isOn = 9;
int64 nodeClusterId = 10; int64 nodeClusterId = 10;
string bandwidthAlgo = 11;
} }
// //
@@ -0,0 +1,108 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_user_ad_instance.proto";
import "models/rpc_messages.proto";
//
service UserADInstanceService {
//
rpc createUserADInstance(CreateUserADInstanceRequest) returns (CreateUserADInstanceResponse);
//
rpc buyUserADInstance(BuyUserADInstanceRequest) returns (BuyUserADInstanceResponse);
//
rpc countUserADInstances(CountUserADInstancesRequest) returns (RPCCountResponse);
//
rpc listUserADInstances(ListUserADInstancesRequest) returns (ListUserADInstancesResponse);
//
rpc findUserADInstance(FindUserADInstanceRequest) returns (FindUserADInstanceResponse);
//
rpc deleteUserADInstance(DeleteUserADInstanceRequest) returns (RPCSuccess);
//
rpc renewUserADInstance(RenewUserADInstanceRequest) returns (RPCSuccess);
//
rpc updateUserADInstanceObjects(UpdateUserADInstanceObjectsRequest) returns (RPCSuccess);
}
//
message CreateUserADInstanceRequest {
int64 userId = 1;
int64 adPackageId = 2;
int64 adPackagePeriodId = 3;
int32 count = 4;
}
message CreateUserADInstanceResponse {
repeated int64 userADInstanceIds = 1;
}
//
message BuyUserADInstanceRequest {
int64 userId = 1;
int64 adPackageId = 2;
int64 adPackagePeriodId = 3;
int32 count = 4;
}
message BuyUserADInstanceResponse {
repeated int64 userADInstanceIds = 1;
}
//
message CountUserADInstancesRequest {
int64 adNetworkId = 1; // 线ID
int64 userId = 2; // ID
int64 adPackagePeriodId = 3;
string expiresDay = 4;
bool availableOnly = 5; //
}
//
message ListUserADInstancesRequest {
int64 adNetworkId = 1; // 线ID
int64 userId = 2; // ID
int64 adPackagePeriodId = 3;
string expiresDay = 4;
bool availableOnly = 5; //
int64 offset = 6;
int64 size = 7;
}
message ListUserADInstancesResponse {
repeated UserADInstance userADInstances = 1;
}
//
message FindUserADInstanceRequest {
int64 userADInstanceId = 1;
}
message FindUserADInstanceResponse {
UserADInstance userADInstance = 1;
}
//
message DeleteUserADInstanceRequest {
int64 userADInstanceId = 1;
}
//
message RenewUserADInstanceRequest {
int64 userADInstanceId = 1;
int64 adPackagePeriodId = 2;
}
//
message UpdateUserADInstanceObjectsRequest {
int64 userADInstanceId = 1;
repeated string objectCodes = 2;
}
@@ -9,7 +9,8 @@ type HTTPFirewallBlockAction struct {
StatusCode int `yaml:"statusCode" json:"statusCode"` StatusCode int `yaml:"statusCode" json:"statusCode"`
Body string `yaml:"body" json:"body"` // supports HTML Body string `yaml:"body" json:"body"` // supports HTML
URL string `yaml:"url" json:"url"` URL string `yaml:"url" json:"url"`
Timeout int32 `yaml:"timeout" json:"timeout"` Timeout int32 `yaml:"timeout" json:"timeout"` // 最小封禁时长
TimeoutMax int32 `yaml:"timeoutMax" json:"timeoutMax"` // 最大封禁时长
Scope FirewallScope `yaml:"scope" json:"scope"` Scope FirewallScope `yaml:"scope" json:"scope"`
} }
@@ -286,7 +286,7 @@ var AllCheckpoints = []*HTTPFirewallCheckpointDefinition{
{ {
Name: "CC统计(旧)", Name: "CC统计(旧)",
Prefix: "cc", Prefix: "cc",
Description: "统计某段时间段内的请求信息(请使用新的CC统计代替)", Description: "统计某段时间段内的请求信息(不推荐再使用,请使用新的CC2统计代替)",
HasParams: true, HasParams: true,
Params: []*KeyValue{ Params: []*KeyValue{
NewKeyValue("请求数", "requests"), NewKeyValue("请求数", "requests"),
@@ -0,0 +1,26 @@
// Copyright 2022 Liuxiangchao iwind.liu@gmail.com. All rights reserved. Official site: https://goedge.cn .
package firewallconfigs_test
import (
"fmt"
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs"
"strings"
"testing"
)
func TestRuleCheckpoint_Markdown(t *testing.T) {
var result = []string{}
for _, def := range firewallconfigs.AllCheckpoints {
def.Description = strings.ReplaceAll(def.Description, "<code-label>", "`")
def.Description = strings.ReplaceAll(def.Description, "</code-label>", "`")
var row = "## " + def.Name + "\n"
row += "* 名称:" + def.Name + "\n"
row += "* 代号:`${" + def.Prefix + "}`\n"
row += "* 描述:" + def.Description + "\n"
result = append(result, row)
}
fmt.Print(strings.Join(result, "\n") + "\n")
}
@@ -4,6 +4,7 @@ type HTTPFirewallRef struct {
IsPrior bool `yaml:"isPrior" json:"isPrior"` IsPrior bool `yaml:"isPrior" json:"isPrior"`
IsOn bool `yaml:"isOn" json:"isOn"` IsOn bool `yaml:"isOn" json:"isOn"`
FirewallPolicyId int64 `yaml:"firewallPolicyId" json:"firewallPolicyId"` FirewallPolicyId int64 `yaml:"firewallPolicyId" json:"firewallPolicyId"`
IgnoreGlobalRules bool `yaml:"ignoreGlobalRules" json:"ignoreGlobalRules"` // 忽略系统定义的全局规则
} }
func (this *HTTPFirewallRef) Init() error { func (this *HTTPFirewallRef) Init() error {
@@ -16,6 +16,7 @@ type HTTPFirewallRule struct {
Operator string `yaml:"operator" json:"operator"` Operator string `yaml:"operator" json:"operator"`
Value string `yaml:"value" json:"value"` Value string `yaml:"value" json:"value"`
IsCaseInsensitive bool `yaml:"isCaseInsensitive" json:"isCaseInsensitive"` IsCaseInsensitive bool `yaml:"isCaseInsensitive" json:"isCaseInsensitive"`
IsComposed bool `yaml:"isComposed" json:"isComposed"`
CheckpointOptions map[string]interface{} `yaml:"checkpointOptions" json:"checkpointOptions"` CheckpointOptions map[string]interface{} `yaml:"checkpointOptions" json:"checkpointOptions"`
Description string `yaml:"description" json:"description"` Description string `yaml:"description" json:"description"`
} }
@@ -1,17 +1,22 @@
package firewallconfigs package firewallconfigs_test
import ( import (
"fmt" "fmt"
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs"
"strings" "strings"
"testing" "testing"
) )
func TestRuleOperator_Markdown(t *testing.T) { func TestRuleOperator_Markdown(t *testing.T) {
result := []string{} var result = []string{}
for _, def := range AllRuleOperators { for _, def := range firewallconfigs.AllRuleOperators {
row := "## " + def.Name + "\n" def.Description = strings.ReplaceAll(def.Description, "<code-label>", "`")
row += "符号:`" + def.Code + "`\n" def.Description = strings.ReplaceAll(def.Description, "</code-label>", "`")
row += "描述:" + def.Description + "\n"
var row = "## " + def.Name + "\n"
row += "* 名称:" + def.Name + "\n"
row += "* 代号:`" + def.Code + "`\n"
row += "* 描述:" + def.Description + "\n"
result = append(result, row) result = append(result, row)
} }
@@ -558,6 +558,7 @@ func HTTPFirewallTemplate() *HTTPFirewallPolicy {
"keys": []string{"${remoteAddr}", "${requestPath}"}, "keys": []string{"${remoteAddr}", "${requestPath}"},
"period": "60", "period": "60",
"threshold": 120, "threshold": 120,
"enableFingerprint": true,
}, },
IsCaseInsensitive: false, IsCaseInsensitive: false,
}) })
@@ -616,6 +617,7 @@ func HTTPFirewallTemplate() *HTTPFirewallPolicy {
"keys": []string{"${remoteAddr}"}, "keys": []string{"${remoteAddr}"},
"period": "60", "period": "60",
"threshold": 1200, "threshold": 1200,
"enableFingerprint": true,
}, },
IsCaseInsensitive: false, IsCaseInsensitive: false,
}) })
+16 -1
View File
@@ -7,9 +7,14 @@ func DefaultGlobalServerConfig() *GlobalServerConfig {
config.HTTPAccessLog.EnableRequestHeaders = true config.HTTPAccessLog.EnableRequestHeaders = true
config.HTTPAccessLog.EnableResponseHeaders = true config.HTTPAccessLog.EnableResponseHeaders = true
config.HTTPAccessLog.EnableCookies = true config.HTTPAccessLog.EnableCookies = true
config.HTTPAccessLog.EnableServerNotFound = true
config.Log.RecordServerError = false config.Log.RecordServerError = false
config.Performance.AutoWriteTimeout = true config.Performance.AutoWriteTimeout = true
config.Performance.AutoReadTimeout = true config.Performance.AutoReadTimeout = true
config.Stat.Upload.MaxCities = 32
config.Stat.Upload.MaxProviders = 32
config.Stat.Upload.MaxSystems = 64
config.Stat.Upload.MaxBrowsers = 64
return config return config
} }
@@ -21,15 +26,25 @@ type GlobalServerConfig struct {
AllowNodeIP bool `yaml:"allowNodeIP" json:"allowNodeIP"` // 允许IP直接访问 AllowNodeIP bool `yaml:"allowNodeIP" json:"allowNodeIP"` // 允许IP直接访问
DefaultDomain string `yaml:"defaultDomain" json:"defaultDomain"` // 默认的域名 DefaultDomain string `yaml:"defaultDomain" json:"defaultDomain"` // 默认的域名
DomainMismatchAction *DomainMismatchAction `yaml:"domainMismatchAction" json:"domainMismatchAction"` // 不匹配时采取的动作 DomainMismatchAction *DomainMismatchAction `yaml:"domainMismatchAction" json:"domainMismatchAction"` // 不匹配时采取的动作
} `yaml:"httpAll" json:"httpAll"` } `yaml:"httpAll" json:"httpAll"` // HTTP统一配置
HTTPAccessLog struct { HTTPAccessLog struct {
EnableRequestHeaders bool `yaml:"enableRequestHeaders" json:"enableRequestHeaders"` // 记录请求Header EnableRequestHeaders bool `yaml:"enableRequestHeaders" json:"enableRequestHeaders"` // 记录请求Header
CommonRequestHeadersOnly bool `yaml:"commonRequestHeadersOnly" json:"commonRequestHeadersOnly"` // 只保留通用Header CommonRequestHeadersOnly bool `yaml:"commonRequestHeadersOnly" json:"commonRequestHeadersOnly"` // 只保留通用Header
EnableResponseHeaders bool `yaml:"enableResponseHeaders" json:"enableResponseHeaders"` // 记录响应Header EnableResponseHeaders bool `yaml:"enableResponseHeaders" json:"enableResponseHeaders"` // 记录响应Header
EnableCookies bool `yaml:"enableCookies" json:"enableCookies"` // 记录Cookie EnableCookies bool `yaml:"enableCookies" json:"enableCookies"` // 记录Cookie
EnableServerNotFound bool `yaml:"enableServerNotFound" json:"enableServerNotFound"` // 记录服务找不到的日志
} `yaml:"httpAccessLog" json:"httpAccessLog"` // 访问日志配置 } `yaml:"httpAccessLog" json:"httpAccessLog"` // 访问日志配置
Stat struct {
Upload struct {
MaxCities int16 `yaml:"maxCities" json:"maxCities"` // 最大区域数量
MaxProviders int16 `yaml:"maxProviders" json:"maxProviders"` // 最大运营商数量
MaxSystems int16 `yaml:"maxSystems" json:"maxSystems"` // 最大操作系统数量
MaxBrowsers int16 `yaml:"maxBrowsers" json:"maxBrowsers"` // 最大浏览器数量
} `yaml:"upload" json:"upload"` // 上传相关设置
} `yaml:"stat" json:"stat"` // 统计相关配置
Performance struct { Performance struct {
Debug bool `yaml:"debug" json:"debug"` // Debug模式 Debug bool `yaml:"debug" json:"debug"` // Debug模式
AutoWriteTimeout bool `yaml:"autoWriteTimeout" json:"autoWriteTimeout"` // 是否自动写超时 AutoWriteTimeout bool `yaml:"autoWriteTimeout" json:"autoWriteTimeout"` // 是否自动写超时
+22
View File
@@ -0,0 +1,22 @@
// Copyright 2023 Liuxiangchao iwind.liu@gmail.com. All rights reserved. Official site: https://goedge.cn .
//go:build !plus
package serverconfigs
// HTTPCCConfig HTTP CC防护配置
type HTTPCCConfig struct {
IsPrior bool `yaml:"isPrior" json:"isPrior"` // 是否覆盖父级
IsOn bool `yaml:"isOn" json:"isOn"` // 是否启用
}
func NewHTTPCCConfig() *HTTPCCConfig {
return &HTTPCCConfig{}
}
func (this *HTTPCCConfig) Init() error {
return nil
}
func (this *HTTPCCConfig) MatchURL(url string) bool {
return false
}
+10 -1
View File
@@ -49,8 +49,9 @@ type HTTPWebConfig struct {
RequestLimit *HTTPRequestLimitConfig `yaml:"requestLimit" json:"requestLimit"` // 并发请求限制 RequestLimit *HTTPRequestLimitConfig `yaml:"requestLimit" json:"requestLimit"` // 并发请求限制
RequestScripts *HTTPRequestScriptsConfig `yaml:"requestScripts" json:"requestScripts"` // HTTP请求相关脚本 RequestScripts *HTTPRequestScriptsConfig `yaml:"requestScripts" json:"requestScripts"` // HTTP请求相关脚本
// UAM // UAM, CC ...
UAM *UAMConfig `yaml:"uam" json:"uam"` UAM *UAMConfig `yaml:"uam" json:"uam"`
CC *HTTPCCConfig `yaml:"cc" json:"cc"`
} }
func (this *HTTPWebConfig) Init() error { func (this *HTTPWebConfig) Init() error {
@@ -284,6 +285,14 @@ func (this *HTTPWebConfig) Init() error {
} }
} }
// cc
if this.CC != nil {
err := this.CC.Init()
if err != nil {
return err
}
}
// user agent // user agent
if this.UserAgent != nil { if this.UserAgent != nil {
err := this.UserAgent.Init() err := this.UserAgent.Init()
+5
View File
@@ -86,6 +86,11 @@ func FindAllMetricKeyDefinitions(category MetricItemCategory) []*shared.Definiti
Code: "${requestPathExtension}", Code: "${requestPathExtension}",
Description: "请求路径中的文件扩展名,包括点符号,比如.html、.png", Description: "请求路径中的文件扩展名,包括点符号,比如.html、.png",
}, },
{
Name: "小写文件扩展名",
Code: "${requestPathLowerExtension}",
Description: "请求路径中的文件扩展名小写形式,包括点符号,比如.html、.png",
},
{ {
Name: "主机名", Name: "主机名",
Code: "${host}", Code: "${host}",
@@ -103,3 +103,16 @@ func (this *HTTPHeaderConfig) Init() error {
func (this *HTTPHeaderConfig) HasVariables() bool { func (this *HTTPHeaderConfig) HasVariables() bool {
return this.hasVariables return this.hasVariables
} }
// Match 判断是否匹配状态码
func (this *HTTPHeaderConfig) Match(statusCode int) bool {
if !this.IsOn {
return false
}
if this.Status == nil {
return false
}
return this.Status.Match(statusCode)
}
@@ -18,6 +18,8 @@ func DefaultRequestVariables() []maps.Map {
{"code": "${requestLength}", "name": "请求内容长度", "description": ""}, {"code": "${requestLength}", "name": "请求内容长度", "description": ""},
{"code": "${requestMethod}", "name": "请求方法", "description": "比如GET、POST"}, {"code": "${requestMethod}", "name": "请求方法", "description": "比如GET、POST"},
{"code": "${requestFilename}", "name": "请求文件路径", "description": ""}, {"code": "${requestFilename}", "name": "请求文件路径", "description": ""},
{"code": "${requestPathExtension}", "name": "请求文件扩展名", "description": "请求路径中的文件扩展名,包括点符号,比如.html、.png"},
{"code": "${requestPathLowerExtension}", "name": "请求文件小写扩展名", "description": "请求路径中的文件扩展名,其中大写字母会被自动转换为小写,包括点符号,比如.html、.png"},
{"code": "${scheme}", "name": "请求协议,http或https", "description": ""}, {"code": "${scheme}", "name": "请求协议,http或https", "description": ""},
{"code": "${proto}", "name": "包含版本的HTTP请求协议", "description:": "类似于HTTP/1.0"}, {"code": "${proto}", "name": "包含版本的HTTP请求协议", "description:": "类似于HTTP/1.0"},
{"code": "${timeISO8601}", "name": "ISO 8601格式的时间", "description": "比如2018-07-16T23:52:24.839+08:00"}, {"code": "${timeISO8601}", "name": "ISO 8601格式的时间", "description": "比如2018-07-16T23:52:24.839+08:00"},
+70
View File
@@ -0,0 +1,70 @@
// Copyright 2023 Liuxiangchao iwind.liu@gmail.com. All rights reserved. Official site: https://goedge.cn .
package shared
import (
"errors"
"regexp"
"strings"
)
type URLPatternType = string
const (
URLPatternTypeWildcard URLPatternType = "wildcard" // 通配符
URLPatternTypeRegexp URLPatternType = "regexp" // 正则表达式
)
type URLPattern struct {
Type URLPatternType `yaml:"type" json:"type"`
Pattern string `yaml:"pattern" json:"pattern"`
reg *regexp.Regexp
}
func (this *URLPattern) Init() error {
if len(this.Pattern) == 0 {
return nil
}
switch this.Type {
case URLPatternTypeWildcard:
// 只支持星号
var pieces = strings.Split(this.Pattern, "*")
for index, piece := range pieces {
pieces[index] = regexp.QuoteMeta(piece)
}
var pattern = strings.Join(pieces, "(.*)")
if len(pattern) > 0 && pattern[0] == '/' {
pattern = "(http|https)://[\\w.-]+" + pattern
}
reg, err := regexp.Compile("(?i)" /** 大小写不敏感 **/ + "^" + pattern + "$")
if err != nil {
return err
}
this.reg = reg
case URLPatternTypeRegexp:
var pattern = this.Pattern
if !strings.HasPrefix(pattern, "(?i)") { // 大小写不敏感
pattern = "(?i)" + pattern
}
reg, err := regexp.Compile(pattern)
if err != nil {
return errors.New("compile '" + pattern + "' failed: " + err.Error())
}
this.reg = reg
}
return nil
}
func (this *URLPattern) Match(url string) bool {
if len(this.Pattern) == 0 && len(url) == 0 {
return true
}
if this.reg != nil {
return this.reg.MatchString(url)
}
return false
}
@@ -0,0 +1,117 @@
// Copyright 2023 Liuxiangchao iwind.liu@gmail.com. All rights reserved. Official site: https://goedge.cn .
package shared_test
import (
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/shared"
"testing"
)
func TestURLPattern_Match(t *testing.T) {
type unitTest struct {
patternType string
pattern string
url string
result bool
}
for _, ut := range []*unitTest{
{
patternType: "wildcard",
pattern: "*",
url: "https://example.com",
result: true,
},
{
patternType: "wildcard",
pattern: "https://example*",
url: "https://example.com",
result: true,
},
{
patternType: "wildcard",
pattern: "*com",
url: "https://example.com",
result: true,
},
{
patternType: "wildcard",
pattern: "*COM",
url: "https://example.com",
result: true,
},
{
patternType: "wildcard",
pattern: "*COM",
url: "https://example.com/hello",
result: false,
},
{
patternType: "wildcard",
pattern: "http://*",
url: "https://example.com",
result: false,
},
{
patternType: "wildcard",
pattern: "https://example.com",
url: "https://example.com",
result: true,
},
{
patternType: "wildcard",
pattern: "/hello/world",
url: "https://example-test.com/hello/world",
result: true,
},
{
patternType: "wildcard",
pattern: "/hello/world",
url: "https://example-test.com/123/hello/world",
result: false,
},
{
patternType: "regexp",
pattern: ".*",
url: "https://example.com",
result: true,
},
{
patternType: "regexp",
pattern: "^https://.*",
url: "https://example.com",
result: true,
},
{
patternType: "regexp",
pattern: "^https://.*EXAMPLE.COM",
url: "https://example.com",
result: true,
},
{
patternType: "regexp",
pattern: "(?i)https://.*EXAMPLE.COM/\\d+",
url: "https://example.com/123456",
result: true,
},
{
patternType: "regexp",
pattern: "(?i)https://.*EXAMPLE.COM/\\d+$",
url: "https://example.com/123456/789",
result: false,
},
} {
var p = &shared.URLPattern{
Type: ut.patternType,
Pattern: ut.pattern,
}
err := p.Init()
if err != nil {
t.Fatal(err)
}
var b = p.Match(ut.url) == ut.result
if !b {
t.Fatal("not matched pattern:", ut.pattern, "url:", ut.url)
}
}
}
@@ -35,6 +35,7 @@ type SSLCertConfig struct {
OCSPError string `yaml:"ocspError" json:"ocspError"` OCSPError string `yaml:"ocspError" json:"ocspError"`
cert *tls.Certificate cert *tls.Certificate
caCerts []*x509.Certificate
timeBegin time.Time timeBegin time.Time
timeEnd time.Time timeEnd time.Time
} }
@@ -44,6 +45,8 @@ func (this *SSLCertConfig) Init() error {
var commonNames []string // 发行组织 var commonNames []string // 发行组织
var dnsNames []string // 域名 var dnsNames []string // 域名
this.caCerts = []*x509.Certificate{}
// 分析证书 // 分析证书
if this.IsCA { // CA证书 if this.IsCA { // CA证书
var data = this.CertData var data = this.CertData
@@ -68,6 +71,7 @@ func (this *SSLCertConfig) Init() error {
if c == nil { if c == nil {
return errors.New("no available certificates in file") return errors.New("no available certificates in file")
} }
this.caCerts = append(this.caCerts, c)
for _, dnsName := range c.DNSNames { for _, dnsName := range c.DNSNames {
if !lists.ContainsString(dnsNames, dnsName) { if !lists.ContainsString(dnsNames, dnsName) {
@@ -141,6 +145,10 @@ func (this *SSLCertConfig) CertObject() *tls.Certificate {
return this.cert return this.cert
} }
func (this *SSLCertConfig) CACerts() []*x509.Certificate {
return this.caCerts
}
// TimeBegin 开始时间 // TimeBegin 开始时间
func (this *SSLCertConfig) TimeBegin() time.Time { func (this *SSLCertConfig) TimeBegin() time.Time {
return this.timeBegin return this.timeBegin
@@ -71,6 +71,8 @@ func (this *SSLPolicy) Init() error {
} }
// CA certs // CA certs
this.clientCAPool = x509.NewCertPool()
for _, cert := range this.ClientCACerts { for _, cert := range this.ClientCACerts {
err := cert.Init() err := cert.Init()
if err != nil { if err != nil {
@@ -80,6 +82,10 @@ func (this *SSLPolicy) Init() error {
for _, dnsName := range cert.DNSNames { for _, dnsName := range cert.DNSNames {
this.nameMapping[dnsName] = cert.CertObject() this.nameMapping[dnsName] = cert.CertObject()
} }
for _, caCert := range cert.CACerts() {
this.clientCAPool.AddCert(caCert)
}
} }
// min version // min version
+43
View File
@@ -2,12 +2,55 @@
package serverconfigs package serverconfigs
import "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/shared"
// UAMConfig UAM配置 // UAMConfig UAM配置
type UAMConfig struct { type UAMConfig struct {
IsPrior bool `yaml:"isPrior" json:"isPrior"` IsPrior bool `yaml:"isPrior" json:"isPrior"`
IsOn bool `yaml:"isOn" json:"isOn"` IsOn bool `yaml:"isOn" json:"isOn"`
OnlyURLPatterns []*shared.URLPattern `yaml:"onlyURLPatterns" json:"onlyURLPatterns"` // 仅限的URL
ExceptURLPatterns []*shared.URLPattern `yaml:"exceptURLPatterns" json:"exceptURLPatterns"` // 排除的URL
} }
func (this *UAMConfig) Init() error { func (this *UAMConfig) Init() error {
// only urls
for _, pattern := range this.OnlyURLPatterns {
err := pattern.Init()
if err != nil {
return err
}
}
// except urls
for _, pattern := range this.ExceptURLPatterns {
err := pattern.Init()
if err != nil {
return err
}
}
return nil return nil
} }
func (this *UAMConfig) MatchURL(url string) bool {
// except
if len(this.ExceptURLPatterns) > 0 {
for _, pattern := range this.ExceptURLPatterns {
if pattern.Match(url) {
return false
}
}
}
if len(this.OnlyURLPatterns) > 0 {
for _, pattern := range this.OnlyURLPatterns {
if pattern.Match(url) {
return true
}
}
return false
}
return true
}
+1 -4
View File
@@ -1,7 +1,5 @@
package systemconfigs package systemconfigs
import "github.com/TeaOSLab/EdgeCommon/pkg/userconfigs"
// AdminUIConfig 管理员界面相关配置 // AdminUIConfig 管理员界面相关配置
type AdminUIConfig struct { type AdminUIConfig struct {
ProductName string `json:"productName"` // 产品名 ProductName string `json:"productName"` // 产品名
@@ -14,10 +12,9 @@ type AdminUIConfig struct {
LogoFileId int64 `json:"logoFileId"` // Logo文件ID LogoFileId int64 `json:"logoFileId"` // Logo文件ID
DefaultPageSize int `json:"defaultPageSize"` // 默认每页显示数 DefaultPageSize int `json:"defaultPageSize"` // 默认每页显示数
TimeZone string `json:"timeZone"` // 时区 TimeZone string `json:"timeZone"` // 时区
Modules []userconfigs.UserModule `json:"modules"` // 开通模块 Modules []string `json:"modules"` // 开通模块
} }
func (this *AdminUIConfig) ContainsModule(module string) bool { func (this *AdminUIConfig) ContainsModule(module string) bool {
if len(this.Modules) == 0 { if len(this.Modules) == 0 {
return true return true
+7
View File
@@ -8,3 +8,10 @@ const (
BandwidthUnitByte BandwidthUnit = "byte" BandwidthUnitByte BandwidthUnit = "byte"
BandwidthUnitBit BandwidthUnit = "bit" BandwidthUnitBit BandwidthUnit = "bit"
) )
type BandwidthAlgo = string // 带宽算法
const (
BandwidthAlgoSecondly BandwidthAlgo = "secondly" // 按秒算
BandwidthAlgoAvg BandwidthAlgo = "avg" // N分钟平均
)
+1
View File
@@ -27,6 +27,7 @@ type UserUIConfig struct {
TrafficStats struct { TrafficStats struct {
BandwidthPercentile int32 `json:"bandwidthPercentile"` // 带宽百分位 BandwidthPercentile int32 `json:"bandwidthPercentile"` // 带宽百分位
DefaultBandwidthDateRange string `json:"defaultBandwidthDateRange"` // 默认带宽周期 DefaultBandwidthDateRange string `json:"defaultBandwidthDateRange"` // 默认带宽周期
BandwidthAlgo BandwidthAlgo `json:"bandwidthAlgo"` // 带宽算法
} `json:"trafficStats"` // 流量统计相关设置 } `json:"trafficStats"` // 流量统计相关设置
} }
+1
View File
@@ -6,6 +6,7 @@ type UserModule = string
const ( const (
UserModuleCDN UserModule = "cdn" UserModuleCDN UserModule = "cdn"
UserModuleAntiDDoS UserModule = "antiDDoS"
UserModuleNS UserModule = "ns" UserModuleNS UserModule = "ns"
) )
+4 -1
View File
@@ -36,8 +36,11 @@ type UserRegisterConfig struct {
ClusterId int64 `yaml:"clusterId" json:"clusterId"` // 用户创建服务集群 ClusterId int64 `yaml:"clusterId" json:"clusterId"` // 用户创建服务集群
Features []string `yaml:"features" json:"features"` // 默认启用的功能 Features []string `yaml:"features" json:"features"` // 默认启用的功能
// 开通DNS // 开通DNS服务
NSIsOn bool `json:"nsIsOn"` // 是否开启智能DNS服务 NSIsOn bool `json:"nsIsOn"` // 是否开启智能DNS服务
// 开通高防服务
ADIsOn bool `json:"adIsOn"` // 是否开启高防服务
} }
func DefaultUserRegisterConfig() *UserRegisterConfig { func DefaultUserRegisterConfig() *UserRegisterConfig {