rename fn_session_event_callback to plugin_event_callback and update API parameters

* plugin_event_callback delete 'struct stellar_packet *p'
    * plugin_event_callback rename 'uint16_t len' to 'size_t len'
    * plugin_event_callback rename 'void **pme' to 'void **ctx'
This commit is contained in:
luwenpeng
2022-08-16 10:37:00 +08:00
parent 4005e8d716
commit b9d93e042b
13 changed files with 190 additions and 188 deletions

View File

@@ -3,6 +3,7 @@
#include "uthash/uthash.h"
#include "sdk/include/plugin.h"
#include "session_manager.h"
#include "plugin_manager_module.h"
@@ -20,7 +21,7 @@ enum plugin_status
struct callback_runtime
{
void *cb_args;
fn_session_event_callback *event_cb;
plugin_event_callback *event_cb;
enum session_event_type event;
enum plugin_status status;
@@ -41,7 +42,7 @@ struct session_plugin_ctx
struct callback_static
{
enum session_event_type event;
fn_session_event_callback *event_cb;
plugin_event_callback *event_cb;
};
struct plugin_manager_eventcb
@@ -342,7 +343,7 @@ void plugin_manager_destory(struct plugin_manager *plug_mgr)
}
}
int plugin_manager_register(struct plugin_manager *plug_mgr, const char *session_name, enum session_event_type event, fn_session_event_callback *event_cb)
int plugin_manager_register(struct plugin_manager *plug_mgr, const char *session_name, enum session_event_type event, plugin_event_callback *event_cb)
{
if (strlen(session_name) <= 0)
{
@@ -399,7 +400,6 @@ void plugin_manager_dispatch(struct plugin_manager *plug_mgr, struct stellar_eve
struct session_plugin_ctx *plug_ctx = stellar_event_get_plugin_ctx(event);
enum session_event_type event_type = stellar_event_get_type(event);
const char *session_name = stellar_event_get_session_name(event);
struct stellar_packet *packet = stellar_event_get_packet(event);
uint16_t payload_len = stellar_event_get_payload_length(event);
const char *payload = stellar_event_get_payload(event);
@@ -441,7 +441,7 @@ void plugin_manager_dispatch(struct plugin_manager *plug_mgr, struct stellar_eve
{
plug_ctx->callback_index = i;
plugin_manager_log(DEBUG, "dispatch, run event_cb: %p, plugin status: 'taken over', session: %s, event: (%d, %s)", runtime->event_cb, session_name, event_type, event_str_buffer);
runtime->event_cb(seesion, SESSION_EVENT_CLOSING, packet, payload, payload_len, &runtime->cb_args);
runtime->event_cb(seesion, SESSION_EVENT_CLOSING, payload, payload_len, &runtime->cb_args);
continue;
}
else
@@ -455,7 +455,7 @@ void plugin_manager_dispatch(struct plugin_manager *plug_mgr, struct stellar_eve
{
plug_ctx->callback_index = i;
plugin_manager_log(DEBUG, "dispatch, run event_cb: %p, plugin status: 'normal', session: %s, event: (%d, %s)", runtime->event_cb, session_name, event_type, event_str_buffer);
runtime->event_cb(seesion, event_type, packet, payload, payload_len, &runtime->cb_args);
runtime->event_cb(seesion, event_type, payload, payload_len, &runtime->cb_args);
runtime->is_be_called = 1;
}
else
@@ -506,7 +506,7 @@ void pm_session_dettach_me(const struct stellar_session *session)
* /|\
* |
* plugin cb2 run pm_session_take_over
*
*
* A plugin(cb1/cb3/cb4) that is taken over, if the plugin was called before being taken over and has a registered SESSION_EVENT_CLOSING event,
* it will be called again when the SESSION_EVENT_CLOSING event comes. Otherwise, the plugin will not be called.
*/
@@ -531,7 +531,7 @@ void pm_session_take_over(const struct stellar_session *session)
* Util For Gtest
******************************************************************************/
void *pm_session_get_plugin_pme(const struct stellar_session *session)
void *pm_session_get_plugin_ctx(const struct stellar_session *session)
{
struct session_plugin_ctx *plugin_ctx = stellar_session_get_plugin_ctx(session);
assert(plugin_ctx);