Add function neu_plugin_self_node_name

This commit is contained in:
eeff
2021-11-30 09:58:49 +08:00
committed by Parker Liu
parent ae131c4da6
commit 019efe4d2c
4 changed files with 45 additions and 0 deletions
+12
View File
@@ -72,6 +72,8 @@ typedef enum neu_reqresp_type {
NEU_REQRESP_DATATAGS,
NEU_REQRESP_SELF_NODE_ID,
NEU_REQRESP_NODE_ID,
NEU_REQRESP_SELF_NODE_NAME,
NEU_REQRESP_NODE_NAME,
NEU_REQRESP_SET_NODE_SETTING,
NEU_REQRESP_GET_NODE_SETTING,
NEU_REQRESP_GET_NODE_SETTING_RESP,
@@ -267,6 +269,16 @@ typedef struct neu_represp_node_id {
neu_node_id_t node_id;
} neu_reqresp_node_id_t;
/* NEU_REQRESP_SELF_NODE_NAME */
typedef struct neu_cmd_self_node_name {
uint32_t reserved;
} neu_cmd_self_node_name_t;
/* NEU_REQRESP_NODE_NAME */
typedef struct neu_represp_node_name {
const char *node_name;
} neu_reqresp_node_name_t;
/* NEU_REQRESP_SET_NODE_SETTING */
typedef struct neu_cmd_set_node_setting {
neu_node_id_t node_id;
+1
View File
@@ -115,6 +115,7 @@ void neu_plugin_response_trans_data(neu_plugin_t * plugin,
neu_taggrp_config_t *grp_config,
neu_data_val_t *data, uint32_t event_id);
neu_node_id_t neu_plugin_self_node_id(neu_plugin_t *plugin);
const char * neu_plugin_self_node_name(neu_plugin_t *plugin);
intptr_t neu_system_add_plugin(neu_plugin_t *plugin, plugin_kind_e kind,
neu_node_type_e node_type,
+18
View File
@@ -673,6 +673,24 @@ static int adapter_command(neu_adapter_t *adapter, neu_request_t *cmd,
break;
}
case NEU_REQRESP_SELF_NODE_NAME: {
ADAPTER_RESP_CMD(
adapter, cmd, neu_reqresp_node_name_t, neu_cmd_self_node_name_t, rv,
NEU_REQRESP_NODE_NAME, p_result, {
(void) req_cmd;
ret = malloc(sizeof(neu_reqresp_node_name_t));
if (ret == NULL) {
log_error("Failed to allocate result of get node name");
rv = -1;
free(result);
break;
}
ret->node_name = adapter->name;
});
break;
}
case NEU_REQRESP_SET_NODE_SETTING: {
ADAPTER_RESP_CODE(adapter, cmd, intptr_t, neu_cmd_set_node_setting_t,
rv, NEU_REQRESP_ERR_CODE, p_result, {
+14
View File
@@ -25,6 +25,8 @@
#define NEU_PLUGIN_MAGIC_NUMBER 0x43474d50 // a string "PMGC"
#define NEU_SELF_NODE_NAME_UNKNOWN "unknown-adapter"
#define PLUGIN_CALL_CMD(plugin, type, req_buff, resp_struct, func) \
{ \
neu_request_t cmd = { 0 }; \
@@ -321,6 +323,18 @@ neu_node_id_t neu_plugin_self_node_id(neu_plugin_t *plugin)
return node_id;
}
const char *neu_plugin_self_node_name(neu_plugin_t *plugin)
{
neu_cmd_self_node_name_t self_node_name;
// the adapter may not be ready yet
const char *node_name = NEU_SELF_NODE_NAME_UNKNOWN;
PLUGIN_CALL_CMD(plugin, NEU_REQRESP_SELF_NODE_NAME, self_node_name,
neu_reqresp_node_name_t, { node_name = resp->node_name; })
return node_name;
}
intptr_t neu_system_add_plugin(neu_plugin_t *plugin, plugin_kind_e kind,
neu_node_type_e node_type,
const char * plugin_name,