[域名解析]优化解析状态显示

This commit is contained in:
GoEdgeLab
2020-12-23 16:49:57 +08:00
parent 3fb504cec5
commit cb38ad9b2b
6 changed files with 805 additions and 348 deletions

View File

@@ -36,11 +36,14 @@ type DNSDomain struct {
DataUpdatedAt int64 `protobuf:"varint,4,opt,name=dataUpdatedAt,proto3" json:"dataUpdatedAt,omitempty"` DataUpdatedAt int64 `protobuf:"varint,4,opt,name=dataUpdatedAt,proto3" json:"dataUpdatedAt,omitempty"`
DataError string `protobuf:"bytes,5,opt,name=dataError,proto3" json:"dataError,omitempty"` DataError string `protobuf:"bytes,5,opt,name=dataError,proto3" json:"dataError,omitempty"`
CountServerRecords int64 `protobuf:"varint,6,opt,name=countServerRecords,proto3" json:"countServerRecords,omitempty"` CountServerRecords int64 `protobuf:"varint,6,opt,name=countServerRecords,proto3" json:"countServerRecords,omitempty"`
CountAllServers int64 `protobuf:"varint,13,opt,name=countAllServers,proto3" json:"countAllServers,omitempty"`
ServersChanged bool `protobuf:"varint,7,opt,name=serversChanged,proto3" json:"serversChanged,omitempty"` ServersChanged bool `protobuf:"varint,7,opt,name=serversChanged,proto3" json:"serversChanged,omitempty"`
CountNodeRecords int64 `protobuf:"varint,8,opt,name=countNodeRecords,proto3" json:"countNodeRecords,omitempty"` CountNodeRecords int64 `protobuf:"varint,8,opt,name=countNodeRecords,proto3" json:"countNodeRecords,omitempty"`
CountAllNodes int64 `protobuf:"varint,14,opt,name=countAllNodes,proto3" json:"countAllNodes,omitempty"`
NodesChanged bool `protobuf:"varint,9,opt,name=nodesChanged,proto3" json:"nodesChanged,omitempty"` NodesChanged bool `protobuf:"varint,9,opt,name=nodesChanged,proto3" json:"nodesChanged,omitempty"`
Routes []*DNSRoute `protobuf:"bytes,10,rep,name=routes,proto3" json:"routes,omitempty"` Routes []*DNSRoute `protobuf:"bytes,10,rep,name=routes,proto3" json:"routes,omitempty"`
ProviderId int64 `protobuf:"varint,11,opt,name=providerId,proto3" json:"providerId,omitempty"` ProviderId int64 `protobuf:"varint,11,opt,name=providerId,proto3" json:"providerId,omitempty"`
CountNodeClusters int64 `protobuf:"varint,12,opt,name=countNodeClusters,proto3" json:"countNodeClusters,omitempty"`
} }
func (x *DNSDomain) Reset() { func (x *DNSDomain) Reset() {
@@ -117,6 +120,13 @@ func (x *DNSDomain) GetCountServerRecords() int64 {
return 0 return 0
} }
func (x *DNSDomain) GetCountAllServers() int64 {
if x != nil {
return x.CountAllServers
}
return 0
}
func (x *DNSDomain) GetServersChanged() bool { func (x *DNSDomain) GetServersChanged() bool {
if x != nil { if x != nil {
return x.ServersChanged return x.ServersChanged
@@ -131,6 +141,13 @@ func (x *DNSDomain) GetCountNodeRecords() int64 {
return 0 return 0
} }
func (x *DNSDomain) GetCountAllNodes() int64 {
if x != nil {
return x.CountAllNodes
}
return 0
}
func (x *DNSDomain) GetNodesChanged() bool { func (x *DNSDomain) GetNodesChanged() bool {
if x != nil { if x != nil {
return x.NodesChanged return x.NodesChanged
@@ -152,13 +169,20 @@ func (x *DNSDomain) GetProviderId() int64 {
return 0 return 0
} }
func (x *DNSDomain) GetCountNodeClusters() int64 {
if x != nil {
return x.CountNodeClusters
}
return 0
}
var File_model_dns_domain_proto protoreflect.FileDescriptor var File_model_dns_domain_proto protoreflect.FileDescriptor
var file_model_dns_domain_proto_rawDesc = []byte{ var file_model_dns_domain_proto_rawDesc = []byte{
0x0a, 0x16, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x0a, 0x16, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61,
0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x15, 0x6d, 0x6f, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x15, 0x6d, 0x6f,
0x64, 0x65, 0x6c, 0x5f, 0x64, 0x6e, 0x73, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x64, 0x65, 0x6c, 0x5f, 0x64, 0x6e, 0x73, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x22, 0xf5, 0x02, 0x0a, 0x09, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6f, 0x74, 0x6f, 0x22, 0xf3, 0x03, 0x0a, 0x09, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69,
0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69,
0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x03, 0x20, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x03, 0x20,
@@ -169,20 +193,28 @@ var file_model_dns_domain_proto_rawDesc = []byte{
0x28, 0x09, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x2e, 0x0a, 0x28, 0x09, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x2e, 0x0a,
0x12, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x12, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f,
0x72, 0x64, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x64, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x26, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x28, 0x0a,
0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x18, 0x0f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73,
0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x43, 0x68, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c,
0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65,
0x64, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52,
0x10, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12,
0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x63, 0x6f,
0x72, 0x64, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01,
0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x4e, 0x6f, 0x64, 0x65,
0x73, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x43, 0x68, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x43, 0x68,
0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18,
0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x4e, 0x53, 0x52, 0x6f, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x4e, 0x53, 0x52, 0x6f,
0x75, 0x74, 0x65, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x75, 0x74, 0x65, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70,
0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52,
0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x63,
0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73,
0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 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 (

View File

@@ -972,6 +972,133 @@ func (x *ExistAvailableDomainsResponse) GetExist() bool {
return false return false
} }
// 检查域名是否在记录中
type ExistDNSDomainRecordRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
DnsDomainId int64 `protobuf:"varint,1,opt,name=dnsDomainId,proto3" json:"dnsDomainId,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` // 解析类型比如A, CNAME等
Route string `protobuf:"bytes,4,opt,name=route,proto3" json:"route,omitempty"` // 线路
Value string `protobuf:"bytes,5,opt,name=value,proto3" json:"value,omitempty"` // 值
}
func (x *ExistDNSDomainRecordRequest) Reset() {
*x = ExistDNSDomainRecordRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_dns_domain_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ExistDNSDomainRecordRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ExistDNSDomainRecordRequest) ProtoMessage() {}
func (x *ExistDNSDomainRecordRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_dns_domain_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 ExistDNSDomainRecordRequest.ProtoReflect.Descriptor instead.
func (*ExistDNSDomainRecordRequest) Descriptor() ([]byte, []int) {
return file_service_dns_domain_proto_rawDescGZIP(), []int{19}
}
func (x *ExistDNSDomainRecordRequest) GetDnsDomainId() int64 {
if x != nil {
return x.DnsDomainId
}
return 0
}
func (x *ExistDNSDomainRecordRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ExistDNSDomainRecordRequest) GetType() string {
if x != nil {
return x.Type
}
return ""
}
func (x *ExistDNSDomainRecordRequest) GetRoute() string {
if x != nil {
return x.Route
}
return ""
}
func (x *ExistDNSDomainRecordRequest) GetValue() string {
if x != nil {
return x.Value
}
return ""
}
type ExistDNSDomainRecordResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
IsOk bool `protobuf:"varint,1,opt,name=isOk,proto3" json:"isOk,omitempty"`
}
func (x *ExistDNSDomainRecordResponse) Reset() {
*x = ExistDNSDomainRecordResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_service_dns_domain_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ExistDNSDomainRecordResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ExistDNSDomainRecordResponse) ProtoMessage() {}
func (x *ExistDNSDomainRecordResponse) ProtoReflect() protoreflect.Message {
mi := &file_service_dns_domain_proto_msgTypes[20]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ExistDNSDomainRecordResponse.ProtoReflect.Descriptor instead.
func (*ExistDNSDomainRecordResponse) Descriptor() ([]byte, []int) {
return file_service_dns_domain_proto_rawDescGZIP(), []int{20}
}
func (x *ExistDNSDomainRecordResponse) GetIsOk() bool {
if x != nil {
return x.IsOk
}
return false
}
var File_service_dns_domain_proto protoreflect.FileDescriptor var File_service_dns_domain_proto protoreflect.FileDescriptor
var file_service_dns_domain_proto_rawDesc = []byte{ var file_service_dns_domain_proto_rawDesc = []byte{
@@ -1075,79 +1202,97 @@ var file_service_dns_domain_proto_rawDesc = []byte{
0x1d, 0x45, 0x78, 0x69, 0x73, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x1d, 0x45, 0x78, 0x69, 0x73, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44,
0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14,
0x0a, 0x05, 0x65, 0x78, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x65, 0x0a, 0x05, 0x65, 0x78, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x65,
0x78, 0x69, 0x73, 0x74, 0x32, 0xf2, 0x08, 0x0a, 0x10, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x78, 0x69, 0x73, 0x74, 0x22, 0x93, 0x01, 0x0a, 0x1b, 0x45, 0x78, 0x69, 0x73, 0x74, 0x44, 0x4e,
0x69, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x4a, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71,
0x61, 0x74, 0x65, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x1a, 0x2e, 0x70, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69,
0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x64, 0x6e, 0x73, 0x44, 0x6f,
0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x6d, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
0x65, 0x61, 0x74, 0x65, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14,
0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72,
0x64, 0x61, 0x74, 0x65, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x32, 0x0a, 0x1c, 0x45, 0x78,
0x63, 0x65, 0x73, 0x73, 0x12, 0x3d, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x4e, 0x69, 0x73, 0x74, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x63, 0x6f,
0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73,
0x65, 0x74, 0x65, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x4f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x32, 0xcd,
0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x09, 0x0a, 0x10, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x65, 0x72, 0x76,
0x65, 0x73, 0x73, 0x12, 0x59, 0x0a, 0x14, 0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x69, 0x63, 0x65, 0x12, 0x4a, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x4e, 0x53,
0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x1f, 0x2e, 0x70, 0x62, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61,
0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x74, 0x65, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x70, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x4e,
0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x3d, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61,
0x0a, 0x19, 0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x73, 0x69, 0x6e, 0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x4e,
0x69, 0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x24, 0x2e, 0x70, 0x62, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 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, 0x3d,
0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69,
0x6e, 0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x4e, 0x53,
0x44, 0x6f, 0x6d, 0x61, 0x69, 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, 0x59, 0x0a,
0x14, 0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44,
0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64,
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x19, 0x66, 0x69, 0x6e, 0x64,
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x73, 0x69, 0x63, 0x44, 0x4e, 0x53, 0x44,
0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x24, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x73, 0x69, 0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f,
0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x70, 0x62,
0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x73, 0x69, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x73, 0x69,
0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x74, 0x1a, 0x25, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x73, 0x65, 0x12, 0x79, 0x0a, 0x2a, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e,
0x65, 0x64, 0x42, 0x61, 0x73, 0x69, 0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x79, 0x0a, 0x2a, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x6f,
0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76,
0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x35, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x6f,
0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76,
0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 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, 0x98, 0x01, 0x0a, 0x29, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73,
0x57, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49,
0x64, 0x12, 0x34, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e,
0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57,
0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x12, 0x35, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e,
0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57,
0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76,
0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa7,
0x01, 0x0a, 0x2e, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
0x64, 0x42, 0x61, 0x73, 0x69, 0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73,
0x57, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49,
0x64, 0x12, 0x39, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e,
0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x73, 0x69, 0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d,
0x61, 0x69, 0x6e, 0x73, 0x57, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69,
0x64, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x70,
0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
0x42, 0x61, 0x73, 0x69, 0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57,
0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x11, 0x73, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1c, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x98, 0x01,
0x70, 0x62, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x0a, 0x29, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57, 0x69, 0x74, 0x68, 0x44, 0x4e,
0x2e, 0x53, 0x79, 0x6e, 0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x44, 0x61, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x34, 0x2e, 0x70, 0x62,
0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x16, 0x66, 0x69, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44,
0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x6f, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53,
0x75, 0x74, 0x65, 0x73, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x6c, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57,
0x64, 0x41, 0x6c, 0x6c, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x6f, 0x75, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64,
0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa7, 0x01, 0x0a, 0x2e, 0x66, 0x69, 0x6e,
0x78, 0x69, 0x73, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x6f, 0x6d, 0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x73, 0x69, 0x63,
0x61, 0x69, 0x6e, 0x73, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x41, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57, 0x69, 0x74, 0x68, 0x44, 0x4e,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x52, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x39, 0x2e, 0x70, 0x62,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x78, 0x69, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42,
0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x61, 0x73, 0x69, 0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57, 0x69,
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x52,
0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64,
0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x73, 0x69, 0x63, 0x44,
0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x57, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53,
0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x50, 0x0a, 0x11, 0x73, 0x79, 0x6e, 0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d,
0x61, 0x69, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x79, 0x6e,
0x63, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x44,
0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x16, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x44,
0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x21,
0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x44, 0x4e, 0x53, 0x44, 0x6f,
0x6d, 0x61, 0x69, 0x6e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x44, 0x4e,
0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x65, 0x78, 0x69, 0x73, 0x74, 0x41, 0x76,
0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x20,
0x2e, 0x70, 0x62, 0x2e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
0x6c, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c,
0x61, 0x62, 0x6c, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x14, 0x65, 0x78, 0x69, 0x73, 0x74, 0x44, 0x4e, 0x53, 0x44,
0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1f, 0x2e, 0x70, 0x62,
0x2e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52,
0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x70,
0x62, 0x2e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x44, 0x4e, 0x53, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 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 (
@@ -1162,7 +1307,7 @@ func file_service_dns_domain_proto_rawDescGZIP() []byte {
return file_service_dns_domain_proto_rawDescData return file_service_dns_domain_proto_rawDescData
} }
var file_service_dns_domain_proto_msgTypes = make([]protoimpl.MessageInfo, 19) var file_service_dns_domain_proto_msgTypes = make([]protoimpl.MessageInfo, 21)
var file_service_dns_domain_proto_goTypes = []interface{}{ var file_service_dns_domain_proto_goTypes = []interface{}{
(*CreateDNSDomainRequest)(nil), // 0: pb.CreateDNSDomainRequest (*CreateDNSDomainRequest)(nil), // 0: pb.CreateDNSDomainRequest
(*CreateDNSDomainResponse)(nil), // 1: pb.CreateDNSDomainResponse (*CreateDNSDomainResponse)(nil), // 1: pb.CreateDNSDomainResponse
@@ -1183,17 +1328,19 @@ var file_service_dns_domain_proto_goTypes = []interface{}{
(*FindAllDNSDomainRoutesResponse)(nil), // 16: pb.FindAllDNSDomainRoutesResponse (*FindAllDNSDomainRoutesResponse)(nil), // 16: pb.FindAllDNSDomainRoutesResponse
(*ExistAvailableDomainsRequest)(nil), // 17: pb.ExistAvailableDomainsRequest (*ExistAvailableDomainsRequest)(nil), // 17: pb.ExistAvailableDomainsRequest
(*ExistAvailableDomainsResponse)(nil), // 18: pb.ExistAvailableDomainsResponse (*ExistAvailableDomainsResponse)(nil), // 18: pb.ExistAvailableDomainsResponse
(*DNSDomain)(nil), // 19: pb.DNSDomain (*ExistDNSDomainRecordRequest)(nil), // 19: pb.ExistDNSDomainRecordRequest
(*DNSRoute)(nil), // 20: pb.DNSRoute (*ExistDNSDomainRecordResponse)(nil), // 20: pb.ExistDNSDomainRecordResponse
(*RPCSuccess)(nil), // 21: pb.RPCSuccess (*DNSDomain)(nil), // 21: pb.DNSDomain
(*RPCCountResponse)(nil), // 22: pb.RPCCountResponse (*DNSRoute)(nil), // 22: pb.DNSRoute
(*RPCSuccess)(nil), // 23: pb.RPCSuccess
(*RPCCountResponse)(nil), // 24: pb.RPCCountResponse
} }
var file_service_dns_domain_proto_depIdxs = []int32{ var file_service_dns_domain_proto_depIdxs = []int32{
19, // 0: pb.FindEnabledDNSDomainResponse.dnsDomain:type_name -> pb.DNSDomain 21, // 0: pb.FindEnabledDNSDomainResponse.dnsDomain:type_name -> pb.DNSDomain
19, // 1: pb.FindEnabledBasicDNSDomainResponse.dnsDomain:type_name -> pb.DNSDomain 21, // 1: pb.FindEnabledBasicDNSDomainResponse.dnsDomain:type_name -> pb.DNSDomain
19, // 2: pb.FindAllEnabledDNSDomainsWithDNSProviderIdResponse.dnsDomains:type_name -> pb.DNSDomain 21, // 2: pb.FindAllEnabledDNSDomainsWithDNSProviderIdResponse.dnsDomains:type_name -> pb.DNSDomain
19, // 3: pb.FindAllEnabledBasicDNSDomainsWithDNSProviderIdResponse.dnsDomains:type_name -> pb.DNSDomain 21, // 3: pb.FindAllEnabledBasicDNSDomainsWithDNSProviderIdResponse.dnsDomains:type_name -> pb.DNSDomain
20, // 4: pb.FindAllDNSDomainRoutesResponse.routes:type_name -> pb.DNSRoute 22, // 4: pb.FindAllDNSDomainRoutesResponse.routes:type_name -> pb.DNSRoute
0, // 5: pb.DNSDomainService.createDNSDomain:input_type -> pb.CreateDNSDomainRequest 0, // 5: pb.DNSDomainService.createDNSDomain:input_type -> pb.CreateDNSDomainRequest
2, // 6: pb.DNSDomainService.updateDNSDomain:input_type -> pb.UpdateDNSDomainRequest 2, // 6: pb.DNSDomainService.updateDNSDomain:input_type -> pb.UpdateDNSDomainRequest
3, // 7: pb.DNSDomainService.deleteDNSDomain:input_type -> pb.DeleteDNSDomainRequest 3, // 7: pb.DNSDomainService.deleteDNSDomain:input_type -> pb.DeleteDNSDomainRequest
@@ -1205,19 +1352,21 @@ var file_service_dns_domain_proto_depIdxs = []int32{
13, // 13: pb.DNSDomainService.syncDNSDomainData:input_type -> pb.SyncDNSDomainDataRequest 13, // 13: pb.DNSDomainService.syncDNSDomainData:input_type -> pb.SyncDNSDomainDataRequest
15, // 14: pb.DNSDomainService.findAllDNSDomainRoutes:input_type -> pb.FindAllDNSDomainRoutesRequest 15, // 14: pb.DNSDomainService.findAllDNSDomainRoutes:input_type -> pb.FindAllDNSDomainRoutesRequest
17, // 15: pb.DNSDomainService.existAvailableDomains:input_type -> pb.ExistAvailableDomainsRequest 17, // 15: pb.DNSDomainService.existAvailableDomains:input_type -> pb.ExistAvailableDomainsRequest
1, // 16: pb.DNSDomainService.createDNSDomain:output_type -> pb.CreateDNSDomainResponse 19, // 16: pb.DNSDomainService.existDNSDomainRecord:input_type -> pb.ExistDNSDomainRecordRequest
21, // 17: pb.DNSDomainService.updateDNSDomain:output_type -> pb.RPCSuccess 1, // 17: pb.DNSDomainService.createDNSDomain:output_type -> pb.CreateDNSDomainResponse
21, // 18: pb.DNSDomainService.deleteDNSDomain:output_type -> pb.RPCSuccess 23, // 18: pb.DNSDomainService.updateDNSDomain:output_type -> pb.RPCSuccess
5, // 19: pb.DNSDomainService.findEnabledDNSDomain:output_type -> pb.FindEnabledDNSDomainResponse 23, // 19: pb.DNSDomainService.deleteDNSDomain:output_type -> pb.RPCSuccess
7, // 20: pb.DNSDomainService.findEnabledBasicDNSDomain:output_type -> pb.FindEnabledBasicDNSDomainResponse 5, // 20: pb.DNSDomainService.findEnabledDNSDomain:output_type -> pb.FindEnabledDNSDomainResponse
22, // 21: pb.DNSDomainService.countAllEnabledDNSDomainsWithDNSProviderId:output_type -> pb.RPCCountResponse 7, // 21: pb.DNSDomainService.findEnabledBasicDNSDomain:output_type -> pb.FindEnabledBasicDNSDomainResponse
10, // 22: pb.DNSDomainService.findAllEnabledDNSDomainsWithDNSProviderId:output_type -> pb.FindAllEnabledDNSDomainsWithDNSProviderIdResponse 24, // 22: pb.DNSDomainService.countAllEnabledDNSDomainsWithDNSProviderId:output_type -> pb.RPCCountResponse
12, // 23: pb.DNSDomainService.findAllEnabledBasicDNSDomainsWithDNSProviderId:output_type -> pb.FindAllEnabledBasicDNSDomainsWithDNSProviderIdResponse 10, // 23: pb.DNSDomainService.findAllEnabledDNSDomainsWithDNSProviderId:output_type -> pb.FindAllEnabledDNSDomainsWithDNSProviderIdResponse
14, // 24: pb.DNSDomainService.syncDNSDomainData:output_type -> pb.SyncDNSDomainDataResponse 12, // 24: pb.DNSDomainService.findAllEnabledBasicDNSDomainsWithDNSProviderId:output_type -> pb.FindAllEnabledBasicDNSDomainsWithDNSProviderIdResponse
16, // 25: pb.DNSDomainService.findAllDNSDomainRoutes:output_type -> pb.FindAllDNSDomainRoutesResponse 14, // 25: pb.DNSDomainService.syncDNSDomainData:output_type -> pb.SyncDNSDomainDataResponse
18, // 26: pb.DNSDomainService.existAvailableDomains:output_type -> pb.ExistAvailableDomainsResponse 16, // 26: pb.DNSDomainService.findAllDNSDomainRoutes:output_type -> pb.FindAllDNSDomainRoutesResponse
16, // [16:27] is the sub-list for method output_type 18, // 27: pb.DNSDomainService.existAvailableDomains:output_type -> pb.ExistAvailableDomainsResponse
5, // [5:16] is the sub-list for method input_type 20, // 28: pb.DNSDomainService.existDNSDomainRecord:output_type -> pb.ExistDNSDomainRecordResponse
17, // [17:29] is the sub-list for method output_type
5, // [5:17] is the sub-list for method input_type
5, // [5:5] is the sub-list for extension type_name 5, // [5:5] is the sub-list for extension type_name
5, // [5:5] is the sub-list for extension extendee 5, // [5:5] is the sub-list for extension extendee
0, // [0:5] is the sub-list for field type_name 0, // [0:5] is the sub-list for field type_name
@@ -1460,6 +1609,30 @@ func file_service_dns_domain_proto_init() {
return nil return nil
} }
} }
file_service_dns_domain_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ExistDNSDomainRecordRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_dns_domain_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ExistDNSDomainRecordResponse); 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{
@@ -1467,7 +1640,7 @@ func file_service_dns_domain_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(), GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_service_dns_domain_proto_rawDesc, RawDescriptor: file_service_dns_domain_proto_rawDesc,
NumEnums: 0, NumEnums: 0,
NumMessages: 19, NumMessages: 21,
NumExtensions: 0, NumExtensions: 0,
NumServices: 1, NumServices: 1,
}, },
@@ -1515,6 +1688,8 @@ type DNSDomainServiceClient interface {
FindAllDNSDomainRoutes(ctx context.Context, in *FindAllDNSDomainRoutesRequest, opts ...grpc.CallOption) (*FindAllDNSDomainRoutesResponse, error) FindAllDNSDomainRoutes(ctx context.Context, in *FindAllDNSDomainRoutesRequest, opts ...grpc.CallOption) (*FindAllDNSDomainRoutesResponse, error)
// 判断是否有域名可选 // 判断是否有域名可选
ExistAvailableDomains(ctx context.Context, in *ExistAvailableDomainsRequest, opts ...grpc.CallOption) (*ExistAvailableDomainsResponse, error) ExistAvailableDomains(ctx context.Context, in *ExistAvailableDomainsRequest, opts ...grpc.CallOption) (*ExistAvailableDomainsResponse, error)
// 检查域名是否在记录中
ExistDNSDomainRecord(ctx context.Context, in *ExistDNSDomainRecordRequest, opts ...grpc.CallOption) (*ExistDNSDomainRecordResponse, error)
} }
type dNSDomainServiceClient struct { type dNSDomainServiceClient struct {
@@ -1624,6 +1799,15 @@ func (c *dNSDomainServiceClient) ExistAvailableDomains(ctx context.Context, in *
return out, nil return out, nil
} }
func (c *dNSDomainServiceClient) ExistDNSDomainRecord(ctx context.Context, in *ExistDNSDomainRecordRequest, opts ...grpc.CallOption) (*ExistDNSDomainRecordResponse, error) {
out := new(ExistDNSDomainRecordResponse)
err := c.cc.Invoke(ctx, "/pb.DNSDomainService/existDNSDomainRecord", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// DNSDomainServiceServer is the server API for DNSDomainService service. // DNSDomainServiceServer is the server API for DNSDomainService service.
type DNSDomainServiceServer interface { type DNSDomainServiceServer interface {
// 创建域名 // 创建域名
@@ -1648,6 +1832,8 @@ type DNSDomainServiceServer interface {
FindAllDNSDomainRoutes(context.Context, *FindAllDNSDomainRoutesRequest) (*FindAllDNSDomainRoutesResponse, error) FindAllDNSDomainRoutes(context.Context, *FindAllDNSDomainRoutesRequest) (*FindAllDNSDomainRoutesResponse, error)
// 判断是否有域名可选 // 判断是否有域名可选
ExistAvailableDomains(context.Context, *ExistAvailableDomainsRequest) (*ExistAvailableDomainsResponse, error) ExistAvailableDomains(context.Context, *ExistAvailableDomainsRequest) (*ExistAvailableDomainsResponse, error)
// 检查域名是否在记录中
ExistDNSDomainRecord(context.Context, *ExistDNSDomainRecordRequest) (*ExistDNSDomainRecordResponse, error)
} }
// UnimplementedDNSDomainServiceServer can be embedded to have forward compatible implementations. // UnimplementedDNSDomainServiceServer can be embedded to have forward compatible implementations.
@@ -1687,6 +1873,9 @@ func (*UnimplementedDNSDomainServiceServer) FindAllDNSDomainRoutes(context.Conte
func (*UnimplementedDNSDomainServiceServer) ExistAvailableDomains(context.Context, *ExistAvailableDomainsRequest) (*ExistAvailableDomainsResponse, error) { func (*UnimplementedDNSDomainServiceServer) ExistAvailableDomains(context.Context, *ExistAvailableDomainsRequest) (*ExistAvailableDomainsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ExistAvailableDomains not implemented") return nil, status.Errorf(codes.Unimplemented, "method ExistAvailableDomains not implemented")
} }
func (*UnimplementedDNSDomainServiceServer) ExistDNSDomainRecord(context.Context, *ExistDNSDomainRecordRequest) (*ExistDNSDomainRecordResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ExistDNSDomainRecord not implemented")
}
func RegisterDNSDomainServiceServer(s *grpc.Server, srv DNSDomainServiceServer) { func RegisterDNSDomainServiceServer(s *grpc.Server, srv DNSDomainServiceServer) {
s.RegisterService(&_DNSDomainService_serviceDesc, srv) s.RegisterService(&_DNSDomainService_serviceDesc, srv)
@@ -1890,6 +2079,24 @@ func _DNSDomainService_ExistAvailableDomains_Handler(srv interface{}, ctx contex
return interceptor(ctx, in, info, handler) return interceptor(ctx, in, info, handler)
} }
func _DNSDomainService_ExistDNSDomainRecord_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ExistDNSDomainRecordRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(DNSDomainServiceServer).ExistDNSDomainRecord(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/pb.DNSDomainService/ExistDNSDomainRecord",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DNSDomainServiceServer).ExistDNSDomainRecord(ctx, req.(*ExistDNSDomainRecordRequest))
}
return interceptor(ctx, in, info, handler)
}
var _DNSDomainService_serviceDesc = grpc.ServiceDesc{ var _DNSDomainService_serviceDesc = grpc.ServiceDesc{
ServiceName: "pb.DNSDomainService", ServiceName: "pb.DNSDomainService",
HandlerType: (*DNSDomainServiceServer)(nil), HandlerType: (*DNSDomainServiceServer)(nil),
@@ -1938,6 +2145,10 @@ var _DNSDomainService_serviceDesc = grpc.ServiceDesc{
MethodName: "existAvailableDomains", MethodName: "existAvailableDomains",
Handler: _DNSDomainService_ExistAvailableDomains_Handler, Handler: _DNSDomainService_ExistAvailableDomains_Handler,
}, },
{
MethodName: "existDNSDomainRecord",
Handler: _DNSDomainService_ExistDNSDomainRecord_Handler,
},
}, },
Streams: []grpc.StreamDesc{}, Streams: []grpc.StreamDesc{},
Metadata: "service_dns_domain.proto", Metadata: "service_dns_domain.proto",

File diff suppressed because it is too large Load Diff

View File

@@ -12,9 +12,12 @@ message DNSDomain {
int64 dataUpdatedAt = 4; int64 dataUpdatedAt = 4;
string dataError = 5; string dataError = 5;
int64 countServerRecords = 6; int64 countServerRecords = 6;
int64 countAllServers = 13;
bool serversChanged = 7; bool serversChanged = 7;
int64 countNodeRecords = 8; int64 countNodeRecords = 8;
int64 countAllNodes = 14;
bool nodesChanged = 9; bool nodesChanged = 9;
repeated DNSRoute routes = 10; repeated DNSRoute routes = 10;
int64 providerId = 11; int64 providerId = 11;
int64 countNodeClusters = 12;
} }

View File

@@ -41,6 +41,9 @@ service DNSDomainService {
// 判断是否有域名可选 // 判断是否有域名可选
rpc existAvailableDomains (ExistAvailableDomainsRequest) returns (ExistAvailableDomainsResponse); rpc existAvailableDomains (ExistAvailableDomainsRequest) returns (ExistAvailableDomainsResponse);
// 检查域名是否在记录中
rpc existDNSDomainRecord (ExistDNSDomainRecordRequest) returns (ExistDNSDomainRecordResponse);
} }
// 创建域名 // 创建域名
@@ -134,4 +137,17 @@ message ExistAvailableDomainsRequest {
message ExistAvailableDomainsResponse { message ExistAvailableDomainsResponse {
bool exist = 1; bool exist = 1;
}
// 检查域名是否在记录中
message ExistDNSDomainRecordRequest {
int64 dnsDomainId = 1;
string name = 2;
string type = 3; // 解析类型比如A, CNAME等
string route = 4; // 线路
string value = 5; // 值
}
message ExistDNSDomainRecordResponse {
bool isOk = 1;
} }

View File

@@ -62,6 +62,9 @@ service NodeClusterService {
// 计算使用某个DNS域名的集群数量 // 计算使用某个DNS域名的集群数量
rpc countAllEnabledNodeClustersWithDNSDomainId (CountAllEnabledNodeClustersWithDNSDomainIdRequest) returns (RPCCountResponse); rpc countAllEnabledNodeClustersWithDNSDomainId (CountAllEnabledNodeClustersWithDNSDomainIdRequest) returns (RPCCountResponse);
// 查找使用某个域名的所有集群
rpc findAllEnabledNodeClustersWithDNSDomainId (FindAllEnabledNodeClustersWithDNSDomainIdRequest) returns (FindAllEnabledNodeClustersWithDNSDomainIdResponse);
// 检查集群域名是否已经被使用 // 检查集群域名是否已经被使用
rpc checkNodeClusterDNSName (CheckNodeClusterDNSNameRequest) returns (CheckNodeClusterDNSNameResponse); rpc checkNodeClusterDNSName (CheckNodeClusterDNSNameRequest) returns (CheckNodeClusterDNSNameResponse);
@@ -247,6 +250,15 @@ message CountAllEnabledNodeClustersWithDNSDomainIdRequest {
int64 dnsDomainId = 1; int64 dnsDomainId = 1;
} }
// 查找使用某个域名的所有集群
message FindAllEnabledNodeClustersWithDNSDomainIdRequest {
int64 dnsDomainId = 1;
}
message FindAllEnabledNodeClustersWithDNSDomainIdResponse {
repeated NodeCluster nodeClusters = 1;
}
// 检查集群域名是否已经被使用 // 检查集群域名是否已经被使用
message CheckNodeClusterDNSNameRequest { message CheckNodeClusterDNSNameRequest {
int64 nodeClusterId = 1; int64 nodeClusterId = 1;