示例#1
0
/*
GetTopicDetails is a Client RPC method allowing clients to discover details about a topic.
*/
func (handler *RPCHandler) GetTopicDetails(args *rapi.GetTopicDetailsArgs, results *rapi.GetTopicDetailsResults) error {
	node := handler.server.GetNode(args.Topic)
	if node != nil {
		return node.GetTopicDetails(args, results)
	} else {
		results.Result = rapi.Get_RI_TOPIC_NOT_FOUND(handler.server.address, args.Topic)
		return nil
	}
}
示例#2
0
/*
SendMessages is a Client RPC method allowing clients to send new messages to a topic on the leader node.
*/
func (handler *RPCHandler) SendMessages(args *rapi.SendMessagesArgs, results *rapi.SendMessagesResults) error {
	node := handler.server.GetNode(args.Topic)
	if node != nil {
		return node.ClientRequestSendMessages(args, results)
	} else {
		results.Result = rapi.Get_RI_TOPIC_NOT_FOUND(handler.server.address, args.Topic)
		return nil
	}
}