// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.31.0 // protoc v3.19.4 // source: service_ns_node.proto package pb import ( 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) ) // 根据集群查找所有NS节点 type FindAllNSNodesWithNSClusterIdRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsClusterId int64 `protobuf:"varint,1,opt,name=nsClusterId,proto3" json:"nsClusterId,omitempty"` } func (x *FindAllNSNodesWithNSClusterIdRequest) Reset() { *x = FindAllNSNodesWithNSClusterIdRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindAllNSNodesWithNSClusterIdRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindAllNSNodesWithNSClusterIdRequest) ProtoMessage() {} func (x *FindAllNSNodesWithNSClusterIdRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_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 FindAllNSNodesWithNSClusterIdRequest.ProtoReflect.Descriptor instead. func (*FindAllNSNodesWithNSClusterIdRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{0} } func (x *FindAllNSNodesWithNSClusterIdRequest) GetNsClusterId() int64 { if x != nil { return x.NsClusterId } return 0 } type FindAllNSNodesWithNSClusterIdResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodes []*NSNode `protobuf:"bytes,1,rep,name=nsNodes,proto3" json:"nsNodes,omitempty"` } func (x *FindAllNSNodesWithNSClusterIdResponse) Reset() { *x = FindAllNSNodesWithNSClusterIdResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindAllNSNodesWithNSClusterIdResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindAllNSNodesWithNSClusterIdResponse) ProtoMessage() {} func (x *FindAllNSNodesWithNSClusterIdResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_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 FindAllNSNodesWithNSClusterIdResponse.ProtoReflect.Descriptor instead. func (*FindAllNSNodesWithNSClusterIdResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{1} } func (x *FindAllNSNodesWithNSClusterIdResponse) GetNsNodes() []*NSNode { if x != nil { return x.NsNodes } return nil } // 所有可用的NS节点数量 type CountAllNSNodesRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *CountAllNSNodesRequest) Reset() { *x = CountAllNSNodesRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CountAllNSNodesRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*CountAllNSNodesRequest) ProtoMessage() {} func (x *CountAllNSNodesRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_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 CountAllNSNodesRequest.ProtoReflect.Descriptor instead. func (*CountAllNSNodesRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{2} } // 计算匹配的NS节点数量 type CountAllNSNodesMatchRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsClusterId int64 `protobuf:"varint,1,opt,name=nsClusterId,proto3" json:"nsClusterId,omitempty"` InstallState int32 `protobuf:"varint,2,opt,name=installState,proto3" json:"installState,omitempty"` ActiveState int32 `protobuf:"varint,3,opt,name=activeState,proto3" json:"activeState,omitempty"` Keyword string `protobuf:"bytes,4,opt,name=keyword,proto3" json:"keyword,omitempty"` } func (x *CountAllNSNodesMatchRequest) Reset() { *x = CountAllNSNodesMatchRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CountAllNSNodesMatchRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*CountAllNSNodesMatchRequest) ProtoMessage() {} func (x *CountAllNSNodesMatchRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_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 CountAllNSNodesMatchRequest.ProtoReflect.Descriptor instead. func (*CountAllNSNodesMatchRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{3} } func (x *CountAllNSNodesMatchRequest) GetNsClusterId() int64 { if x != nil { return x.NsClusterId } return 0 } func (x *CountAllNSNodesMatchRequest) GetInstallState() int32 { if x != nil { return x.InstallState } return 0 } func (x *CountAllNSNodesMatchRequest) GetActiveState() int32 { if x != nil { return x.ActiveState } return 0 } func (x *CountAllNSNodesMatchRequest) GetKeyword() string { if x != nil { return x.Keyword } return "" } // 列出单页NS节点 type ListNSNodesMatchRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Offset int64 `protobuf:"varint,1,opt,name=offset,proto3" json:"offset,omitempty"` Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"` NsClusterId int64 `protobuf:"varint,3,opt,name=nsClusterId,proto3" json:"nsClusterId,omitempty"` InstallState int32 `protobuf:"varint,4,opt,name=installState,proto3" json:"installState,omitempty"` ActiveState int32 `protobuf:"varint,5,opt,name=activeState,proto3" json:"activeState,omitempty"` Keyword string `protobuf:"bytes,6,opt,name=keyword,proto3" json:"keyword,omitempty"` } func (x *ListNSNodesMatchRequest) Reset() { *x = ListNSNodesMatchRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ListNSNodesMatchRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListNSNodesMatchRequest) ProtoMessage() {} func (x *ListNSNodesMatchRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_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 ListNSNodesMatchRequest.ProtoReflect.Descriptor instead. func (*ListNSNodesMatchRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{4} } func (x *ListNSNodesMatchRequest) GetOffset() int64 { if x != nil { return x.Offset } return 0 } func (x *ListNSNodesMatchRequest) GetSize() int64 { if x != nil { return x.Size } return 0 } func (x *ListNSNodesMatchRequest) GetNsClusterId() int64 { if x != nil { return x.NsClusterId } return 0 } func (x *ListNSNodesMatchRequest) GetInstallState() int32 { if x != nil { return x.InstallState } return 0 } func (x *ListNSNodesMatchRequest) GetActiveState() int32 { if x != nil { return x.ActiveState } return 0 } func (x *ListNSNodesMatchRequest) GetKeyword() string { if x != nil { return x.Keyword } return "" } type ListNSNodesMatchResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodes []*NSNode `protobuf:"bytes,1,rep,name=nsNodes,proto3" json:"nsNodes,omitempty"` } func (x *ListNSNodesMatchResponse) Reset() { *x = ListNSNodesMatchResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ListNSNodesMatchResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListNSNodesMatchResponse) ProtoMessage() {} func (x *ListNSNodesMatchResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_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 ListNSNodesMatchResponse.ProtoReflect.Descriptor instead. func (*ListNSNodesMatchResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{5} } func (x *ListNSNodesMatchResponse) GetNsNodes() []*NSNode { if x != nil { return x.NsNodes } return nil } // 计算需要升级的NS节点数量 type CountAllUpgradeNSNodesWithNSClusterIdRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsClusterId int64 `protobuf:"varint,1,opt,name=nsClusterId,proto3" json:"nsClusterId,omitempty"` } func (x *CountAllUpgradeNSNodesWithNSClusterIdRequest) Reset() { *x = CountAllUpgradeNSNodesWithNSClusterIdRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CountAllUpgradeNSNodesWithNSClusterIdRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*CountAllUpgradeNSNodesWithNSClusterIdRequest) ProtoMessage() {} func (x *CountAllUpgradeNSNodesWithNSClusterIdRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_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 CountAllUpgradeNSNodesWithNSClusterIdRequest.ProtoReflect.Descriptor instead. func (*CountAllUpgradeNSNodesWithNSClusterIdRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{6} } func (x *CountAllUpgradeNSNodesWithNSClusterIdRequest) GetNsClusterId() int64 { if x != nil { return x.NsClusterId } return 0 } // 创建NS节点 type CreateNSNodeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` NodeClusterId int64 `protobuf:"varint,2,opt,name=nodeClusterId,proto3" json:"nodeClusterId,omitempty"` NodeLogin *NodeLogin `protobuf:"bytes,3,opt,name=nodeLogin,proto3" json:"nodeLogin,omitempty"` } func (x *CreateNSNodeRequest) Reset() { *x = CreateNSNodeRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CreateNSNodeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*CreateNSNodeRequest) ProtoMessage() {} func (x *CreateNSNodeRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_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 CreateNSNodeRequest.ProtoReflect.Descriptor instead. func (*CreateNSNodeRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{7} } func (x *CreateNSNodeRequest) GetName() string { if x != nil { return x.Name } return "" } func (x *CreateNSNodeRequest) GetNodeClusterId() int64 { if x != nil { return x.NodeClusterId } return 0 } func (x *CreateNSNodeRequest) GetNodeLogin() *NodeLogin { if x != nil { return x.NodeLogin } return nil } type CreateNSNodeResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` } func (x *CreateNSNodeResponse) Reset() { *x = CreateNSNodeResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CreateNSNodeResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*CreateNSNodeResponse) ProtoMessage() {} func (x *CreateNSNodeResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CreateNSNodeResponse.ProtoReflect.Descriptor instead. func (*CreateNSNodeResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{8} } func (x *CreateNSNodeResponse) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } // 删除NS节点 type DeleteNSNodeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` } func (x *DeleteNSNodeRequest) Reset() { *x = DeleteNSNodeRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DeleteNSNodeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DeleteNSNodeRequest) ProtoMessage() {} func (x *DeleteNSNodeRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use DeleteNSNodeRequest.ProtoReflect.Descriptor instead. func (*DeleteNSNodeRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{9} } func (x *DeleteNSNodeRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } // 获取单个NS节点信息 type FindNSNodeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` } func (x *FindNSNodeRequest) Reset() { *x = FindNSNodeRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindNSNodeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindNSNodeRequest) ProtoMessage() {} func (x *FindNSNodeRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_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 FindNSNodeRequest.ProtoReflect.Descriptor instead. func (*FindNSNodeRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{10} } func (x *FindNSNodeRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } type FindNSNodeResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNode *NSNode `protobuf:"bytes,1,opt,name=nsNode,proto3" json:"nsNode,omitempty"` } func (x *FindNSNodeResponse) Reset() { *x = FindNSNodeResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindNSNodeResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindNSNodeResponse) ProtoMessage() {} func (x *FindNSNodeResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use FindNSNodeResponse.ProtoReflect.Descriptor instead. func (*FindNSNodeResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{11} } func (x *FindNSNodeResponse) GetNsNode() *NSNode { if x != nil { return x.NsNode } return nil } // 修改NS节点 type UpdateNSNodeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` NsClusterId int64 `protobuf:"varint,3,opt,name=nsClusterId,proto3" json:"nsClusterId,omitempty"` NodeLogin *NodeLogin `protobuf:"bytes,4,opt,name=nodeLogin,proto3" json:"nodeLogin,omitempty"` IsOn bool `protobuf:"varint,6,opt,name=isOn,proto3" json:"isOn,omitempty"` } func (x *UpdateNSNodeRequest) Reset() { *x = UpdateNSNodeRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UpdateNSNodeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UpdateNSNodeRequest) ProtoMessage() {} func (x *UpdateNSNodeRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use UpdateNSNodeRequest.ProtoReflect.Descriptor instead. func (*UpdateNSNodeRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{12} } func (x *UpdateNSNodeRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } func (x *UpdateNSNodeRequest) GetName() string { if x != nil { return x.Name } return "" } func (x *UpdateNSNodeRequest) GetNsClusterId() int64 { if x != nil { return x.NsClusterId } return 0 } func (x *UpdateNSNodeRequest) GetNodeLogin() *NodeLogin { if x != nil { return x.NodeLogin } return nil } func (x *UpdateNSNodeRequest) GetIsOn() bool { if x != nil { return x.IsOn } return false } // 安装NS节点 type InstallNSNodeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` } func (x *InstallNSNodeRequest) Reset() { *x = InstallNSNodeRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *InstallNSNodeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*InstallNSNodeRequest) ProtoMessage() {} func (x *InstallNSNodeRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use InstallNSNodeRequest.ProtoReflect.Descriptor instead. func (*InstallNSNodeRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{13} } func (x *InstallNSNodeRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } type InstallNSNodeResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *InstallNSNodeResponse) Reset() { *x = InstallNSNodeResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *InstallNSNodeResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*InstallNSNodeResponse) ProtoMessage() {} func (x *InstallNSNodeResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use InstallNSNodeResponse.ProtoReflect.Descriptor instead. func (*InstallNSNodeResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{14} } // 读取NS节点安装状态 type FindNSNodeInstallStatusRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` } func (x *FindNSNodeInstallStatusRequest) Reset() { *x = FindNSNodeInstallStatusRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindNSNodeInstallStatusRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindNSNodeInstallStatusRequest) ProtoMessage() {} func (x *FindNSNodeInstallStatusRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use FindNSNodeInstallStatusRequest.ProtoReflect.Descriptor instead. func (*FindNSNodeInstallStatusRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{15} } func (x *FindNSNodeInstallStatusRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } type FindNSNodeInstallStatusResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields InstallStatus *NodeInstallStatus `protobuf:"bytes,1,opt,name=installStatus,proto3" json:"installStatus,omitempty"` } func (x *FindNSNodeInstallStatusResponse) Reset() { *x = FindNSNodeInstallStatusResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindNSNodeInstallStatusResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindNSNodeInstallStatusResponse) ProtoMessage() {} func (x *FindNSNodeInstallStatusResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use FindNSNodeInstallStatusResponse.ProtoReflect.Descriptor instead. func (*FindNSNodeInstallStatusResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{16} } func (x *FindNSNodeInstallStatusResponse) GetInstallStatus() *NodeInstallStatus { if x != nil { return x.InstallStatus } return nil } // 修改NS节点安装状态 type UpdateNSNodeIsInstalledRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` IsInstalled bool `protobuf:"varint,2,opt,name=isInstalled,proto3" json:"isInstalled,omitempty"` } func (x *UpdateNSNodeIsInstalledRequest) Reset() { *x = UpdateNSNodeIsInstalledRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UpdateNSNodeIsInstalledRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UpdateNSNodeIsInstalledRequest) ProtoMessage() {} func (x *UpdateNSNodeIsInstalledRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use UpdateNSNodeIsInstalledRequest.ProtoReflect.Descriptor instead. func (*UpdateNSNodeIsInstalledRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{17} } func (x *UpdateNSNodeIsInstalledRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } func (x *UpdateNSNodeIsInstalledRequest) GetIsInstalled() bool { if x != nil { return x.IsInstalled } return false } // 更新NS节点状态 type UpdateNSNodeStatusRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NodeId int64 `protobuf:"varint,1,opt,name=nodeId,proto3" json:"nodeId,omitempty"` StatusJSON []byte `protobuf:"bytes,2,opt,name=statusJSON,proto3" json:"statusJSON,omitempty"` } func (x *UpdateNSNodeStatusRequest) Reset() { *x = UpdateNSNodeStatusRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UpdateNSNodeStatusRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UpdateNSNodeStatusRequest) ProtoMessage() {} func (x *UpdateNSNodeStatusRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_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 UpdateNSNodeStatusRequest.ProtoReflect.Descriptor instead. func (*UpdateNSNodeStatusRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{18} } func (x *UpdateNSNodeStatusRequest) GetNodeId() int64 { if x != nil { return x.NodeId } return 0 } func (x *UpdateNSNodeStatusRequest) GetStatusJSON() []byte { if x != nil { return x.StatusJSON } return nil } // 获取当前NS节点信息 type FindCurrentNSNodeConfigRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *FindCurrentNSNodeConfigRequest) Reset() { *x = FindCurrentNSNodeConfigRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindCurrentNSNodeConfigRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindCurrentNSNodeConfigRequest) ProtoMessage() {} func (x *FindCurrentNSNodeConfigRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_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 FindCurrentNSNodeConfigRequest.ProtoReflect.Descriptor instead. func (*FindCurrentNSNodeConfigRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{19} } type FindCurrentNSNodeConfigResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeJSON []byte `protobuf:"bytes,1,opt,name=nsNodeJSON,proto3" json:"nsNodeJSON,omitempty"` } func (x *FindCurrentNSNodeConfigResponse) Reset() { *x = FindCurrentNSNodeConfigResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindCurrentNSNodeConfigResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindCurrentNSNodeConfigResponse) ProtoMessage() {} func (x *FindCurrentNSNodeConfigResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_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 FindCurrentNSNodeConfigResponse.ProtoReflect.Descriptor instead. func (*FindCurrentNSNodeConfigResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{20} } func (x *FindCurrentNSNodeConfigResponse) GetNsNodeJSON() []byte { if x != nil { return x.NsNodeJSON } return nil } // 检查NS节点新版本 type CheckNSNodeLatestVersionRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Os string `protobuf:"bytes,1,opt,name=os,proto3" json:"os,omitempty"` Arch string `protobuf:"bytes,2,opt,name=arch,proto3" json:"arch,omitempty"` CurrentVersion string `protobuf:"bytes,3,opt,name=currentVersion,proto3" json:"currentVersion,omitempty"` } func (x *CheckNSNodeLatestVersionRequest) Reset() { *x = CheckNSNodeLatestVersionRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CheckNSNodeLatestVersionRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*CheckNSNodeLatestVersionRequest) ProtoMessage() {} func (x *CheckNSNodeLatestVersionRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CheckNSNodeLatestVersionRequest.ProtoReflect.Descriptor instead. func (*CheckNSNodeLatestVersionRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{21} } func (x *CheckNSNodeLatestVersionRequest) GetOs() string { if x != nil { return x.Os } return "" } func (x *CheckNSNodeLatestVersionRequest) GetArch() string { if x != nil { return x.Arch } return "" } func (x *CheckNSNodeLatestVersionRequest) GetCurrentVersion() string { if x != nil { return x.CurrentVersion } return "" } type CheckNSNodeLatestVersionResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields HasNewVersion bool `protobuf:"varint,1,opt,name=hasNewVersion,proto3" json:"hasNewVersion,omitempty"` NewVersion string `protobuf:"bytes,2,opt,name=newVersion,proto3" json:"newVersion,omitempty"` } func (x *CheckNSNodeLatestVersionResponse) Reset() { *x = CheckNSNodeLatestVersionResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CheckNSNodeLatestVersionResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*CheckNSNodeLatestVersionResponse) ProtoMessage() {} func (x *CheckNSNodeLatestVersionResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CheckNSNodeLatestVersionResponse.ProtoReflect.Descriptor instead. func (*CheckNSNodeLatestVersionResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{22} } func (x *CheckNSNodeLatestVersionResponse) GetHasNewVersion() bool { if x != nil { return x.HasNewVersion } return false } func (x *CheckNSNodeLatestVersionResponse) GetNewVersion() string { if x != nil { return x.NewVersion } return "" } // 取得最新的版本号 type FindLatestNSNodeVersionRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *FindLatestNSNodeVersionRequest) Reset() { *x = FindLatestNSNodeVersionRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindLatestNSNodeVersionRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindLatestNSNodeVersionRequest) ProtoMessage() {} func (x *FindLatestNSNodeVersionRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[23] 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 FindLatestNSNodeVersionRequest.ProtoReflect.Descriptor instead. func (*FindLatestNSNodeVersionRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{23} } type FindLatestNSNodeVersionResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` } func (x *FindLatestNSNodeVersionResponse) Reset() { *x = FindLatestNSNodeVersionResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindLatestNSNodeVersionResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindLatestNSNodeVersionResponse) ProtoMessage() {} func (x *FindLatestNSNodeVersionResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[24] 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 FindLatestNSNodeVersionResponse.ProtoReflect.Descriptor instead. func (*FindLatestNSNodeVersionResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{24} } func (x *FindLatestNSNodeVersionResponse) GetVersion() string { if x != nil { return x.Version } return "" } // 下载最新NS节点安装文件 type DownloadNSNodeInstallationFileRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Os string `protobuf:"bytes,1,opt,name=os,proto3" json:"os,omitempty"` Arch string `protobuf:"bytes,2,opt,name=arch,proto3" json:"arch,omitempty"` ChunkOffset int64 `protobuf:"varint,3,opt,name=chunkOffset,proto3" json:"chunkOffset,omitempty"` } func (x *DownloadNSNodeInstallationFileRequest) Reset() { *x = DownloadNSNodeInstallationFileRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DownloadNSNodeInstallationFileRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DownloadNSNodeInstallationFileRequest) ProtoMessage() {} func (x *DownloadNSNodeInstallationFileRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[25] 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 DownloadNSNodeInstallationFileRequest.ProtoReflect.Descriptor instead. func (*DownloadNSNodeInstallationFileRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{25} } func (x *DownloadNSNodeInstallationFileRequest) GetOs() string { if x != nil { return x.Os } return "" } func (x *DownloadNSNodeInstallationFileRequest) GetArch() string { if x != nil { return x.Arch } return "" } func (x *DownloadNSNodeInstallationFileRequest) GetChunkOffset() int64 { if x != nil { return x.ChunkOffset } return 0 } type DownloadNSNodeInstallationFileResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ChunkData []byte `protobuf:"bytes,1,opt,name=chunkData,proto3" json:"chunkData,omitempty"` Sum string `protobuf:"bytes,2,opt,name=sum,proto3" json:"sum,omitempty"` // 文件的md5sum Offset int64 `protobuf:"varint,3,opt,name=offset,proto3" json:"offset,omitempty"` Version string `protobuf:"bytes,4,opt,name=version,proto3" json:"version,omitempty"` Filename string `protobuf:"bytes,5,opt,name=filename,proto3" json:"filename,omitempty"` } func (x *DownloadNSNodeInstallationFileResponse) Reset() { *x = DownloadNSNodeInstallationFileResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DownloadNSNodeInstallationFileResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*DownloadNSNodeInstallationFileResponse) ProtoMessage() {} func (x *DownloadNSNodeInstallationFileResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[26] 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 DownloadNSNodeInstallationFileResponse.ProtoReflect.Descriptor instead. func (*DownloadNSNodeInstallationFileResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{26} } func (x *DownloadNSNodeInstallationFileResponse) GetChunkData() []byte { if x != nil { return x.ChunkData } return nil } func (x *DownloadNSNodeInstallationFileResponse) GetSum() string { if x != nil { return x.Sum } return "" } func (x *DownloadNSNodeInstallationFileResponse) GetOffset() int64 { if x != nil { return x.Offset } return 0 } func (x *DownloadNSNodeInstallationFileResponse) GetVersion() string { if x != nil { return x.Version } return "" } func (x *DownloadNSNodeInstallationFileResponse) GetFilename() string { if x != nil { return x.Filename } return "" } // NS节点stream type NSNodeStreamMessage struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` RequestId int64 `protobuf:"varint,2,opt,name=requestId,proto3" json:"requestId,omitempty"` TimeoutSeconds int32 `protobuf:"varint,3,opt,name=timeoutSeconds,proto3" json:"timeoutSeconds,omitempty"` Code string `protobuf:"bytes,4,opt,name=code,proto3" json:"code,omitempty"` DataJSON []byte `protobuf:"bytes,5,opt,name=dataJSON,proto3" json:"dataJSON,omitempty"` IsOk bool `protobuf:"varint,6,opt,name=isOk,proto3" json:"isOk,omitempty"` Message string `protobuf:"bytes,7,opt,name=message,proto3" json:"message,omitempty"` } func (x *NSNodeStreamMessage) Reset() { *x = NSNodeStreamMessage{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NSNodeStreamMessage) String() string { return protoimpl.X.MessageStringOf(x) } func (*NSNodeStreamMessage) ProtoMessage() {} func (x *NSNodeStreamMessage) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[27] 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 NSNodeStreamMessage.ProtoReflect.Descriptor instead. func (*NSNodeStreamMessage) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{27} } func (x *NSNodeStreamMessage) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } func (x *NSNodeStreamMessage) GetRequestId() int64 { if x != nil { return x.RequestId } return 0 } func (x *NSNodeStreamMessage) GetTimeoutSeconds() int32 { if x != nil { return x.TimeoutSeconds } return 0 } func (x *NSNodeStreamMessage) GetCode() string { if x != nil { return x.Code } return "" } func (x *NSNodeStreamMessage) GetDataJSON() []byte { if x != nil { return x.DataJSON } return nil } func (x *NSNodeStreamMessage) GetIsOk() bool { if x != nil { return x.IsOk } return false } func (x *NSNodeStreamMessage) GetMessage() string { if x != nil { return x.Message } return "" } // 更改NS节点连接的API节点信息 type UpdateNSNodeConnectedAPINodesRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ApiNodeIds []int64 `protobuf:"varint,1,rep,packed,name=apiNodeIds,proto3" json:"apiNodeIds,omitempty"` } func (x *UpdateNSNodeConnectedAPINodesRequest) Reset() { *x = UpdateNSNodeConnectedAPINodesRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UpdateNSNodeConnectedAPINodesRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UpdateNSNodeConnectedAPINodesRequest) ProtoMessage() {} func (x *UpdateNSNodeConnectedAPINodesRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[28] 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 UpdateNSNodeConnectedAPINodesRequest.ProtoReflect.Descriptor instead. func (*UpdateNSNodeConnectedAPINodesRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{28} } func (x *UpdateNSNodeConnectedAPINodesRequest) GetApiNodeIds() []int64 { if x != nil { return x.ApiNodeIds } return nil } // 修改NS节点登录信息 type UpdateNSNodeLoginRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` NodeLogin *NodeLogin `protobuf:"bytes,2,opt,name=nodeLogin,proto3" json:"nodeLogin,omitempty"` } func (x *UpdateNSNodeLoginRequest) Reset() { *x = UpdateNSNodeLoginRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UpdateNSNodeLoginRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UpdateNSNodeLoginRequest) ProtoMessage() {} func (x *UpdateNSNodeLoginRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[29] 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 UpdateNSNodeLoginRequest.ProtoReflect.Descriptor instead. func (*UpdateNSNodeLoginRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{29} } func (x *UpdateNSNodeLoginRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } func (x *UpdateNSNodeLoginRequest) GetNodeLogin() *NodeLogin { if x != nil { return x.NodeLogin } return nil } // 启动NS节点 type StartNSNodeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` } func (x *StartNSNodeRequest) Reset() { *x = StartNSNodeRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StartNSNodeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*StartNSNodeRequest) ProtoMessage() {} func (x *StartNSNodeRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[30] 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 StartNSNodeRequest.ProtoReflect.Descriptor instead. func (*StartNSNodeRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{30} } func (x *StartNSNodeRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } type StartNSNodeResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields IsOk bool `protobuf:"varint,1,opt,name=isOk,proto3" json:"isOk,omitempty"` Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"` } func (x *StartNSNodeResponse) Reset() { *x = StartNSNodeResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StartNSNodeResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*StartNSNodeResponse) ProtoMessage() {} func (x *StartNSNodeResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[31] 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 StartNSNodeResponse.ProtoReflect.Descriptor instead. func (*StartNSNodeResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{31} } func (x *StartNSNodeResponse) GetIsOk() bool { if x != nil { return x.IsOk } return false } func (x *StartNSNodeResponse) GetError() string { if x != nil { return x.Error } return "" } // 停止NS节点 type StopNSNodeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` } func (x *StopNSNodeRequest) Reset() { *x = StopNSNodeRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StopNSNodeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*StopNSNodeRequest) ProtoMessage() {} func (x *StopNSNodeRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[32] 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 StopNSNodeRequest.ProtoReflect.Descriptor instead. func (*StopNSNodeRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{32} } func (x *StopNSNodeRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } type StopNSNodeResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields IsOk bool `protobuf:"varint,1,opt,name=isOk,proto3" json:"isOk,omitempty"` Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"` } func (x *StopNSNodeResponse) Reset() { *x = StopNSNodeResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StopNSNodeResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*StopNSNodeResponse) ProtoMessage() {} func (x *StopNSNodeResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[33] 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 StopNSNodeResponse.ProtoReflect.Descriptor instead. func (*StopNSNodeResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{33} } func (x *StopNSNodeResponse) GetIsOk() bool { if x != nil { return x.IsOk } return false } func (x *StopNSNodeResponse) GetError() string { if x != nil { return x.Error } return "" } // 获取NS节点的DDoS设置 type FindNSNodeDDoSProtectionRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` } func (x *FindNSNodeDDoSProtectionRequest) Reset() { *x = FindNSNodeDDoSProtectionRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindNSNodeDDoSProtectionRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindNSNodeDDoSProtectionRequest) ProtoMessage() {} func (x *FindNSNodeDDoSProtectionRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[34] 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 FindNSNodeDDoSProtectionRequest.ProtoReflect.Descriptor instead. func (*FindNSNodeDDoSProtectionRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{34} } func (x *FindNSNodeDDoSProtectionRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } type FindNSNodeDDoSProtectionResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields DdosProtectionJSON []byte `protobuf:"bytes,1,opt,name=ddosProtectionJSON,proto3" json:"ddosProtectionJSON,omitempty"` } func (x *FindNSNodeDDoSProtectionResponse) Reset() { *x = FindNSNodeDDoSProtectionResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindNSNodeDDoSProtectionResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindNSNodeDDoSProtectionResponse) ProtoMessage() {} func (x *FindNSNodeDDoSProtectionResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[35] 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 FindNSNodeDDoSProtectionResponse.ProtoReflect.Descriptor instead. func (*FindNSNodeDDoSProtectionResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{35} } func (x *FindNSNodeDDoSProtectionResponse) GetDdosProtectionJSON() []byte { if x != nil { return x.DdosProtectionJSON } return nil } // 修改NS节点的DDoS设置 type UpdateNSNodeDDoSProtectionRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` DdosProtectionJSON []byte `protobuf:"bytes,2,opt,name=ddosProtectionJSON,proto3" json:"ddosProtectionJSON,omitempty"` } func (x *UpdateNSNodeDDoSProtectionRequest) Reset() { *x = UpdateNSNodeDDoSProtectionRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UpdateNSNodeDDoSProtectionRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UpdateNSNodeDDoSProtectionRequest) ProtoMessage() {} func (x *UpdateNSNodeDDoSProtectionRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[36] 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 UpdateNSNodeDDoSProtectionRequest.ProtoReflect.Descriptor instead. func (*UpdateNSNodeDDoSProtectionRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{36} } func (x *UpdateNSNodeDDoSProtectionRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } func (x *UpdateNSNodeDDoSProtectionRequest) GetDdosProtectionJSON() []byte { if x != nil { return x.DdosProtectionJSON } return nil } // 查找单个节点的API相关配置 type FindNSNodeAPIConfigRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` } func (x *FindNSNodeAPIConfigRequest) Reset() { *x = FindNSNodeAPIConfigRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindNSNodeAPIConfigRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindNSNodeAPIConfigRequest) ProtoMessage() {} func (x *FindNSNodeAPIConfigRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[37] 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 FindNSNodeAPIConfigRequest.ProtoReflect.Descriptor instead. func (*FindNSNodeAPIConfigRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{37} } func (x *FindNSNodeAPIConfigRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } type FindNSNodeAPIConfigResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ApiNodeAddrsJSON []byte `protobuf:"bytes,1,opt,name=apiNodeAddrsJSON,proto3" json:"apiNodeAddrsJSON,omitempty"` } func (x *FindNSNodeAPIConfigResponse) Reset() { *x = FindNSNodeAPIConfigResponse{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindNSNodeAPIConfigResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindNSNodeAPIConfigResponse) ProtoMessage() {} func (x *FindNSNodeAPIConfigResponse) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[38] 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 FindNSNodeAPIConfigResponse.ProtoReflect.Descriptor instead. func (*FindNSNodeAPIConfigResponse) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{38} } func (x *FindNSNodeAPIConfigResponse) GetApiNodeAddrsJSON() []byte { if x != nil { return x.ApiNodeAddrsJSON } return nil } // 修改某个节点的API相关配置 type UpdateNSNodeAPIConfigRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NsNodeId int64 `protobuf:"varint,1,opt,name=nsNodeId,proto3" json:"nsNodeId,omitempty"` ApiNodeAddrsJSON []byte `protobuf:"bytes,2,opt,name=apiNodeAddrsJSON,proto3" json:"apiNodeAddrsJSON,omitempty"` } func (x *UpdateNSNodeAPIConfigRequest) Reset() { *x = UpdateNSNodeAPIConfigRequest{} if protoimpl.UnsafeEnabled { mi := &file_service_ns_node_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UpdateNSNodeAPIConfigRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UpdateNSNodeAPIConfigRequest) ProtoMessage() {} func (x *UpdateNSNodeAPIConfigRequest) ProtoReflect() protoreflect.Message { mi := &file_service_ns_node_proto_msgTypes[39] 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 UpdateNSNodeAPIConfigRequest.ProtoReflect.Descriptor instead. func (*UpdateNSNodeAPIConfigRequest) Descriptor() ([]byte, []int) { return file_service_ns_node_proto_rawDescGZIP(), []int{39} } func (x *UpdateNSNodeAPIConfigRequest) GetNsNodeId() int64 { if x != nil { return x.NsNodeId } return 0 } func (x *UpdateNSNodeAPIConfigRequest) GetApiNodeAddrsJSON() []byte { if x != nil { return x.ApiNodeAddrsJSON } return nil } var File_service_ns_node_proto protoreflect.FileDescriptor var file_service_ns_node_proto_rawDesc = []byte{ 0x0a, 0x15, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x73, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x1a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x73, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x26, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 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, 0x74, 0x6f, 0x1a, 0x1d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x48, 0x0a, 0x24, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x53, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6e, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x22, 0x4d, 0x0a, 0x25, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x53, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x07, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x18, 0x0a, 0x16, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x9f, 0x01, 0x0a, 0x1b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6e, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x22, 0xc7, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6e, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x40, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x07, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x50, 0x0a, 0x2c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x53, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6e, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x22, 0x7c, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x22, 0x32, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, 0x31, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, 0x2f, 0x0a, 0x11, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, 0x38, 0x0a, 0x12, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x06, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x22, 0xa8, 0x01, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6e, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x22, 0x32, 0x0a, 0x14, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, 0x17, 0x0a, 0x15, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3c, 0x0a, 0x1e, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, 0x5e, 0x0a, 0x1f, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x5e, 0x0a, 0x1e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x22, 0x53, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x22, 0x20, 0x0a, 0x1e, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x41, 0x0a, 0x1f, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x4a, 0x53, 0x4f, 0x4e, 0x22, 0x6d, 0x0a, 0x1f, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x6f, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, 0x63, 0x68, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x68, 0x0a, 0x20, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x68, 0x61, 0x73, 0x4e, 0x65, 0x77, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, 0x61, 0x73, 0x4e, 0x65, 0x77, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x77, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x77, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x0a, 0x1e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x3b, 0x0a, 0x1f, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4e, 0x53, 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, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x6d, 0x0a, 0x25, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x6f, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, 0x63, 0x68, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0xa6, 0x01, 0x0a, 0x26, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xd5, 0x01, 0x0a, 0x13, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x46, 0x0a, 0x24, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x73, 0x22, 0x63, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x22, 0x30, 0x0a, 0x12, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, 0x3f, 0x0a, 0x13, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x2f, 0x0a, 0x11, 0x53, 0x74, 0x6f, 0x70, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, 0x3e, 0x0a, 0x12, 0x53, 0x74, 0x6f, 0x70, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x3d, 0x0a, 0x1f, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x44, 0x6f, 0x53, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, 0x52, 0x0a, 0x20, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x44, 0x6f, 0x53, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x64, 0x64, 0x6f, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x64, 0x64, 0x6f, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4a, 0x53, 0x4f, 0x4e, 0x22, 0x6f, 0x0a, 0x21, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x44, 0x6f, 0x53, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x64, 0x64, 0x6f, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x64, 0x64, 0x6f, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4a, 0x53, 0x4f, 0x4e, 0x22, 0x38, 0x0a, 0x1a, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x50, 0x49, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, 0x49, 0x0a, 0x1b, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x50, 0x49, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x64, 0x64, 0x72, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x10, 0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x64, 0x64, 0x72, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x22, 0x66, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x50, 0x49, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x64, 0x64, 0x72, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x10, 0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x64, 0x64, 0x72, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x32, 0xba, 0x11, 0x0a, 0x0d, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x74, 0x0a, 0x1d, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x53, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x53, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x53, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 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, 0x4d, 0x0a, 0x14, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 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, 0x4d, 0x0a, 0x10, 0x6c, 0x69, 0x73, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 0x0a, 0x25, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x53, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x30, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x53, 0x43, 0x6c, 0x75, 0x73, 0x74, 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, 0x41, 0x0a, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0c, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 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, 0x3b, 0x0a, 0x0a, 0x66, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 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, 0x44, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x17, 0x66, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x17, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 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, 0x43, 0x0a, 0x12, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 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, 0x62, 0x0a, 0x17, 0x66, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x18, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x17, 0x66, 0x69, 0x6e, 0x64, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x1e, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x29, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0c, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x28, 0x01, 0x30, 0x01, 0x12, 0x47, 0x0a, 0x13, 0x73, 0x65, 0x6e, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, 0x6f, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x59, 0x0a, 0x1d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x28, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x50, 0x49, 0x4e, 0x6f, 0x64, 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, 0x41, 0x0a, 0x11, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x67, 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, 0x3e, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x6f, 0x70, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x18, 0x66, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x44, 0x6f, 0x53, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x44, 0x6f, 0x53, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x44, 0x6f, 0x53, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x1a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x44, 0x6f, 0x53, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x44, 0x44, 0x6f, 0x53, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 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, 0x56, 0x0a, 0x13, 0x66, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x50, 0x49, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x50, 0x49, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x50, 0x49, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x15, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x50, 0x49, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x53, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x50, 0x49, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 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 ( file_service_ns_node_proto_rawDescOnce sync.Once file_service_ns_node_proto_rawDescData = file_service_ns_node_proto_rawDesc ) func file_service_ns_node_proto_rawDescGZIP() []byte { file_service_ns_node_proto_rawDescOnce.Do(func() { file_service_ns_node_proto_rawDescData = protoimpl.X.CompressGZIP(file_service_ns_node_proto_rawDescData) }) return file_service_ns_node_proto_rawDescData } var file_service_ns_node_proto_msgTypes = make([]protoimpl.MessageInfo, 40) var file_service_ns_node_proto_goTypes = []interface{}{ (*FindAllNSNodesWithNSClusterIdRequest)(nil), // 0: pb.FindAllNSNodesWithNSClusterIdRequest (*FindAllNSNodesWithNSClusterIdResponse)(nil), // 1: pb.FindAllNSNodesWithNSClusterIdResponse (*CountAllNSNodesRequest)(nil), // 2: pb.CountAllNSNodesRequest (*CountAllNSNodesMatchRequest)(nil), // 3: pb.CountAllNSNodesMatchRequest (*ListNSNodesMatchRequest)(nil), // 4: pb.ListNSNodesMatchRequest (*ListNSNodesMatchResponse)(nil), // 5: pb.ListNSNodesMatchResponse (*CountAllUpgradeNSNodesWithNSClusterIdRequest)(nil), // 6: pb.CountAllUpgradeNSNodesWithNSClusterIdRequest (*CreateNSNodeRequest)(nil), // 7: pb.CreateNSNodeRequest (*CreateNSNodeResponse)(nil), // 8: pb.CreateNSNodeResponse (*DeleteNSNodeRequest)(nil), // 9: pb.DeleteNSNodeRequest (*FindNSNodeRequest)(nil), // 10: pb.FindNSNodeRequest (*FindNSNodeResponse)(nil), // 11: pb.FindNSNodeResponse (*UpdateNSNodeRequest)(nil), // 12: pb.UpdateNSNodeRequest (*InstallNSNodeRequest)(nil), // 13: pb.InstallNSNodeRequest (*InstallNSNodeResponse)(nil), // 14: pb.InstallNSNodeResponse (*FindNSNodeInstallStatusRequest)(nil), // 15: pb.FindNSNodeInstallStatusRequest (*FindNSNodeInstallStatusResponse)(nil), // 16: pb.FindNSNodeInstallStatusResponse (*UpdateNSNodeIsInstalledRequest)(nil), // 17: pb.UpdateNSNodeIsInstalledRequest (*UpdateNSNodeStatusRequest)(nil), // 18: pb.UpdateNSNodeStatusRequest (*FindCurrentNSNodeConfigRequest)(nil), // 19: pb.FindCurrentNSNodeConfigRequest (*FindCurrentNSNodeConfigResponse)(nil), // 20: pb.FindCurrentNSNodeConfigResponse (*CheckNSNodeLatestVersionRequest)(nil), // 21: pb.CheckNSNodeLatestVersionRequest (*CheckNSNodeLatestVersionResponse)(nil), // 22: pb.CheckNSNodeLatestVersionResponse (*FindLatestNSNodeVersionRequest)(nil), // 23: pb.FindLatestNSNodeVersionRequest (*FindLatestNSNodeVersionResponse)(nil), // 24: pb.FindLatestNSNodeVersionResponse (*DownloadNSNodeInstallationFileRequest)(nil), // 25: pb.DownloadNSNodeInstallationFileRequest (*DownloadNSNodeInstallationFileResponse)(nil), // 26: pb.DownloadNSNodeInstallationFileResponse (*NSNodeStreamMessage)(nil), // 27: pb.NSNodeStreamMessage (*UpdateNSNodeConnectedAPINodesRequest)(nil), // 28: pb.UpdateNSNodeConnectedAPINodesRequest (*UpdateNSNodeLoginRequest)(nil), // 29: pb.UpdateNSNodeLoginRequest (*StartNSNodeRequest)(nil), // 30: pb.StartNSNodeRequest (*StartNSNodeResponse)(nil), // 31: pb.StartNSNodeResponse (*StopNSNodeRequest)(nil), // 32: pb.StopNSNodeRequest (*StopNSNodeResponse)(nil), // 33: pb.StopNSNodeResponse (*FindNSNodeDDoSProtectionRequest)(nil), // 34: pb.FindNSNodeDDoSProtectionRequest (*FindNSNodeDDoSProtectionResponse)(nil), // 35: pb.FindNSNodeDDoSProtectionResponse (*UpdateNSNodeDDoSProtectionRequest)(nil), // 36: pb.UpdateNSNodeDDoSProtectionRequest (*FindNSNodeAPIConfigRequest)(nil), // 37: pb.FindNSNodeAPIConfigRequest (*FindNSNodeAPIConfigResponse)(nil), // 38: pb.FindNSNodeAPIConfigResponse (*UpdateNSNodeAPIConfigRequest)(nil), // 39: pb.UpdateNSNodeAPIConfigRequest (*NSNode)(nil), // 40: pb.NSNode (*NodeLogin)(nil), // 41: pb.NodeLogin (*NodeInstallStatus)(nil), // 42: pb.NodeInstallStatus (*RPCCountResponse)(nil), // 43: pb.RPCCountResponse (*RPCSuccess)(nil), // 44: pb.RPCSuccess } var file_service_ns_node_proto_depIdxs = []int32{ 40, // 0: pb.FindAllNSNodesWithNSClusterIdResponse.nsNodes:type_name -> pb.NSNode 40, // 1: pb.ListNSNodesMatchResponse.nsNodes:type_name -> pb.NSNode 41, // 2: pb.CreateNSNodeRequest.nodeLogin:type_name -> pb.NodeLogin 40, // 3: pb.FindNSNodeResponse.nsNode:type_name -> pb.NSNode 41, // 4: pb.UpdateNSNodeRequest.nodeLogin:type_name -> pb.NodeLogin 42, // 5: pb.FindNSNodeInstallStatusResponse.installStatus:type_name -> pb.NodeInstallStatus 41, // 6: pb.UpdateNSNodeLoginRequest.nodeLogin:type_name -> pb.NodeLogin 0, // 7: pb.NSNodeService.findAllNSNodesWithNSClusterId:input_type -> pb.FindAllNSNodesWithNSClusterIdRequest 2, // 8: pb.NSNodeService.countAllNSNodes:input_type -> pb.CountAllNSNodesRequest 3, // 9: pb.NSNodeService.countAllNSNodesMatch:input_type -> pb.CountAllNSNodesMatchRequest 4, // 10: pb.NSNodeService.listNSNodesMatch:input_type -> pb.ListNSNodesMatchRequest 6, // 11: pb.NSNodeService.countAllUpgradeNSNodesWithNSClusterId:input_type -> pb.CountAllUpgradeNSNodesWithNSClusterIdRequest 7, // 12: pb.NSNodeService.createNSNode:input_type -> pb.CreateNSNodeRequest 9, // 13: pb.NSNodeService.deleteNSNode:input_type -> pb.DeleteNSNodeRequest 10, // 14: pb.NSNodeService.findNSNode:input_type -> pb.FindNSNodeRequest 12, // 15: pb.NSNodeService.updateNSNode:input_type -> pb.UpdateNSNodeRequest 13, // 16: pb.NSNodeService.installNSNode:input_type -> pb.InstallNSNodeRequest 15, // 17: pb.NSNodeService.findNSNodeInstallStatus:input_type -> pb.FindNSNodeInstallStatusRequest 17, // 18: pb.NSNodeService.updateNSNodeIsInstalled:input_type -> pb.UpdateNSNodeIsInstalledRequest 18, // 19: pb.NSNodeService.updateNSNodeStatus:input_type -> pb.UpdateNSNodeStatusRequest 19, // 20: pb.NSNodeService.findCurrentNSNodeConfig:input_type -> pb.FindCurrentNSNodeConfigRequest 21, // 21: pb.NSNodeService.checkNSNodeLatestVersion:input_type -> pb.CheckNSNodeLatestVersionRequest 23, // 22: pb.NSNodeService.findLatestNSNodeVersion:input_type -> pb.FindLatestNSNodeVersionRequest 25, // 23: pb.NSNodeService.downloadNSNodeInstallationFile:input_type -> pb.DownloadNSNodeInstallationFileRequest 27, // 24: pb.NSNodeService.nsNodeStream:input_type -> pb.NSNodeStreamMessage 27, // 25: pb.NSNodeService.sendCommandToNSNode:input_type -> pb.NSNodeStreamMessage 28, // 26: pb.NSNodeService.updateNSNodeConnectedAPINodes:input_type -> pb.UpdateNSNodeConnectedAPINodesRequest 29, // 27: pb.NSNodeService.updateNSNodeLogin:input_type -> pb.UpdateNSNodeLoginRequest 30, // 28: pb.NSNodeService.startNSNode:input_type -> pb.StartNSNodeRequest 32, // 29: pb.NSNodeService.stopNSNode:input_type -> pb.StopNSNodeRequest 34, // 30: pb.NSNodeService.findNSNodeDDoSProtection:input_type -> pb.FindNSNodeDDoSProtectionRequest 36, // 31: pb.NSNodeService.updateNSNodeDDoSProtection:input_type -> pb.UpdateNSNodeDDoSProtectionRequest 37, // 32: pb.NSNodeService.findNSNodeAPIConfig:input_type -> pb.FindNSNodeAPIConfigRequest 39, // 33: pb.NSNodeService.updateNSNodeAPIConfig:input_type -> pb.UpdateNSNodeAPIConfigRequest 1, // 34: pb.NSNodeService.findAllNSNodesWithNSClusterId:output_type -> pb.FindAllNSNodesWithNSClusterIdResponse 43, // 35: pb.NSNodeService.countAllNSNodes:output_type -> pb.RPCCountResponse 43, // 36: pb.NSNodeService.countAllNSNodesMatch:output_type -> pb.RPCCountResponse 5, // 37: pb.NSNodeService.listNSNodesMatch:output_type -> pb.ListNSNodesMatchResponse 43, // 38: pb.NSNodeService.countAllUpgradeNSNodesWithNSClusterId:output_type -> pb.RPCCountResponse 8, // 39: pb.NSNodeService.createNSNode:output_type -> pb.CreateNSNodeResponse 44, // 40: pb.NSNodeService.deleteNSNode:output_type -> pb.RPCSuccess 11, // 41: pb.NSNodeService.findNSNode:output_type -> pb.FindNSNodeResponse 44, // 42: pb.NSNodeService.updateNSNode:output_type -> pb.RPCSuccess 14, // 43: pb.NSNodeService.installNSNode:output_type -> pb.InstallNSNodeResponse 16, // 44: pb.NSNodeService.findNSNodeInstallStatus:output_type -> pb.FindNSNodeInstallStatusResponse 44, // 45: pb.NSNodeService.updateNSNodeIsInstalled:output_type -> pb.RPCSuccess 44, // 46: pb.NSNodeService.updateNSNodeStatus:output_type -> pb.RPCSuccess 20, // 47: pb.NSNodeService.findCurrentNSNodeConfig:output_type -> pb.FindCurrentNSNodeConfigResponse 22, // 48: pb.NSNodeService.checkNSNodeLatestVersion:output_type -> pb.CheckNSNodeLatestVersionResponse 24, // 49: pb.NSNodeService.findLatestNSNodeVersion:output_type -> pb.FindLatestNSNodeVersionResponse 26, // 50: pb.NSNodeService.downloadNSNodeInstallationFile:output_type -> pb.DownloadNSNodeInstallationFileResponse 27, // 51: pb.NSNodeService.nsNodeStream:output_type -> pb.NSNodeStreamMessage 27, // 52: pb.NSNodeService.sendCommandToNSNode:output_type -> pb.NSNodeStreamMessage 44, // 53: pb.NSNodeService.updateNSNodeConnectedAPINodes:output_type -> pb.RPCSuccess 44, // 54: pb.NSNodeService.updateNSNodeLogin:output_type -> pb.RPCSuccess 31, // 55: pb.NSNodeService.startNSNode:output_type -> pb.StartNSNodeResponse 33, // 56: pb.NSNodeService.stopNSNode:output_type -> pb.StopNSNodeResponse 35, // 57: pb.NSNodeService.findNSNodeDDoSProtection:output_type -> pb.FindNSNodeDDoSProtectionResponse 44, // 58: pb.NSNodeService.updateNSNodeDDoSProtection:output_type -> pb.RPCSuccess 38, // 59: pb.NSNodeService.findNSNodeAPIConfig:output_type -> pb.FindNSNodeAPIConfigResponse 44, // 60: pb.NSNodeService.updateNSNodeAPIConfig:output_type -> pb.RPCSuccess 34, // [34:61] is the sub-list for method output_type 7, // [7:34] is the sub-list for method input_type 7, // [7:7] is the sub-list for extension type_name 7, // [7:7] is the sub-list for extension extendee 0, // [0:7] is the sub-list for field type_name } func init() { file_service_ns_node_proto_init() } func file_service_ns_node_proto_init() { if File_service_ns_node_proto != nil { return } file_models_model_ns_node_proto_init() file_models_model_node_install_status_proto_init() file_models_rpc_messages_proto_init() file_models_model_node_login_proto_init() if !protoimpl.UnsafeEnabled { file_service_ns_node_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindAllNSNodesWithNSClusterIdRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindAllNSNodesWithNSClusterIdResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CountAllNSNodesRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CountAllNSNodesMatchRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListNSNodesMatchRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListNSNodesMatchResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CountAllUpgradeNSNodesWithNSClusterIdRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateNSNodeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateNSNodeResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteNSNodeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindNSNodeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindNSNodeResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateNSNodeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*InstallNSNodeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*InstallNSNodeResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindNSNodeInstallStatusRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindNSNodeInstallStatusResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateNSNodeIsInstalledRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateNSNodeStatusRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindCurrentNSNodeConfigRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindCurrentNSNodeConfigResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CheckNSNodeLatestVersionRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CheckNSNodeLatestVersionResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindLatestNSNodeVersionRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindLatestNSNodeVersionResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DownloadNSNodeInstallationFileRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DownloadNSNodeInstallationFileResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NSNodeStreamMessage); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateNSNodeConnectedAPINodesRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateNSNodeLoginRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StartNSNodeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StartNSNodeResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StopNSNodeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StopNSNodeResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindNSNodeDDoSProtectionRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindNSNodeDDoSProtectionResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateNSNodeDDoSProtectionRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindNSNodeAPIConfigRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindNSNodeAPIConfigResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_service_ns_node_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateNSNodeAPIConfigRequest); 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_ns_node_proto_rawDesc, NumEnums: 0, NumMessages: 40, NumExtensions: 0, NumServices: 1, }, GoTypes: file_service_ns_node_proto_goTypes, DependencyIndexes: file_service_ns_node_proto_depIdxs, MessageInfos: file_service_ns_node_proto_msgTypes, }.Build() File_service_ns_node_proto = out.File file_service_ns_node_proto_rawDesc = nil file_service_ns_node_proto_goTypes = nil file_service_ns_node_proto_depIdxs = nil }