浏览代码

dmq: Add find_dmq_node_uri function to API - based on patch submitted by Andrey Rybkin.

Charles Chance 11 年之前
父节点
当前提交
80a7d7bb64
共有 4 个文件被更改,包括 9 次插入0 次删除
  1. 1 0
      modules/dmq/bind_dmq.c
  2. 2 0
      modules/dmq/bind_dmq.h
  3. 5 0
      modules/dmq/dmqnode.c
  4. 1 0
      modules/dmq/dmqnode.h

+ 1 - 0
modules/dmq/bind_dmq.c

@@ -34,6 +34,7 @@ int bind_dmq(dmq_api_t* api) {
 	api->register_dmq_peer = register_dmq_peer;
 	api->send_message = dmq_send_message;
 	api->bcast_message = bcast_dmq_message;
+	api->find_dmq_node_uri = find_dmq_node_uri2;
 	return 0;
 }
 

+ 2 - 0
modules/dmq/bind_dmq.h

@@ -34,11 +34,13 @@ typedef int (*bcast_message_t)(dmq_peer_t* peer, str* body, dmq_node_t* except,
 		dmq_resp_cback_t* resp_cback, int max_forwards, str* content_type);
 typedef int (*send_message_t)(dmq_peer_t* peer, str* body, dmq_node_t* node,
 		dmq_resp_cback_t* resp_cback, int max_forwards, str* content_type);
+typedef dmq_node_t* (*find_dmq_node_uri_t)(str* uri);
 
 typedef struct dmq_api {
 	register_dmq_peer_t register_dmq_peer;
 	bcast_message_t bcast_message;
 	send_message_t send_message;
+	find_dmq_node_uri_t find_dmq_node_uri;
 } dmq_api_t;
 
 typedef int (*bind_dmq_f)(dmq_api_t* api);

+ 5 - 0
modules/dmq/dmqnode.c

@@ -239,6 +239,11 @@ dmq_node_t* find_dmq_node_uri(dmq_node_list_t* list, str* uri)
 	return ret;
 }
 
+dmq_node_t* find_dmq_node_uri2(str* uri)
+{
+	return find_dmq_node_uri(node_list, uri);
+}
+
 /**
  * @brief destroy dmq node
  */

+ 1 - 0
modules/dmq/dmqnode.h

@@ -66,6 +66,7 @@ int update_node_list(dmq_node_list_t* remote_list);
 dmq_node_t* add_dmq_node(dmq_node_list_t* list, str* uri);
 dmq_node_t* find_dmq_node(dmq_node_list_t* list, dmq_node_t* node);
 dmq_node_t* find_dmq_node_uri(dmq_node_list_t* list, str* uri);
+dmq_node_t* find_dmq_node_uri2(str* uri);
 int del_dmq_node(dmq_node_list_t* list, dmq_node_t* node);
 int cmp_dmq_node(dmq_node_t* node, dmq_node_t* cmpnode);
 dmq_node_t* shm_dup_node(dmq_node_t* node);