| | |
| | | return nil, fmt.Errorf("request err") |
| | | } |
| | | |
| | | func (h *BHBus) RequestOnly(rData []byte, rNodes []bhomebus.NetNode) ([]byte, error) { |
| | | var ret []bhomebus.Mesg |
| | | |
| | | n := h.sockWorker.sock.SendandrecvTimeout(rNodes, rData, &ret, h.conf.sendTimeOut) |
| | | |
| | | if n > 0 && len(ret) > 0 { |
| | | return ret[0].Data, nil |
| | | } else { |
| | | h.printLog("Request n: ", n, " len(ret): ", len(ret)) |
| | | } |
| | | return nil, fmt.Errorf("request err") |
| | | } |
| | | |
| | | func (h *BHBus) Reply(replyKey int, i *Reply) error { |
| | | data,err := json.Marshal(*i) |
| | | if err != nil { |
| | |
| | | return ms.handle.Request(serverId, msgR, milliSecs) |
| | | } |
| | | |
| | | func (ms *MicroNode) RequestOnly(rData []byte, nodes []bhomebus.NetNode) ([]byte, error) { |
| | | return ms.handle.RequestOnly(rData, nodes) |
| | | } |
| | | |
| | | //获取本机中某一个主题的 key (结果只有一个元素) |
| | | func (ms *MicroNode) GetLocalNetNodeByTopic(topicName string) []bhomebus.NetNode { |
| | | netNodes, err := ms.handle.GetNetNodeByTopic(ms.serverId, ms.procInfo, topicName) |