#define MAX_PLAYLIST_LEN 100
+static void __server_playback_state_command_cb(const char *interface_name, const char *signal_name, const char *message, const char *request_id, void *user_data);
+static void __server_playback_action_cb(const char *interface_name, const char *signal_name, const char *message, const char *request_id, void *user_data);
+static void __server_playback_position_cmd_cb(const char *interface_name, const char *signal_name, const char *message, const char *request_id, void *user_data);
+static void __server_shuffle_mode_cmd_cb(const char *interface_name, const char *signal_name, const char *message, const char *request_id, void *user_data);
+static void __server_repeat_mode_cmd_cb(const char *interface_name, const char *signal_name, const char *message, const char *request_id, void *user_data);
+static void __server_custom_command_cb(const char *interface_name, const char *signal_name, const char *message, const char *request_id, void *user_data);
+static void __server_play_playlist_cmd_cb(const char *interface_name, const char *signal_name, const char *message, const char *request_id, void *user_data);
+static void __server_custom_cmd_cb(const char *interface_name, const char *signal_name, const char *message, const char *request_id, void *user_data);
+static void __server_event_reply_received_cb(const char *interface_name, const char *signal_name, const char *message, const char *request_id, void *user_data);
+
+static mc_cb_event_s cb_event[MC_SERVER_EVENT_MAX] = {
+ {MC_DBUS_SIGNAL_NAME_PLAYBACK_STATE_CMD, __server_playback_state_command_cb},
+ {MC_DBUS_SIGNAL_NAME_PLAYBACK_ACTION, __server_playback_action_cb},
+ {MC_DBUS_SIGNAL_NAME_PLAYBACK_POS_CMD, __server_playback_position_cmd_cb},
+ {MC_DBUS_SIGNAL_NAME_SHUFFLE_CMD, __server_shuffle_mode_cmd_cb},
+ {MC_DBUS_SIGNAL_NAME_REPEAT_CMD, __server_repeat_mode_cmd_cb},
+ {MC_DBUS_SIGNAL_NAME_PLAYBACK_PLAYLIST, __server_play_playlist_cmd_cb},
+ {MC_DBUS_SIGNAL_NAME_CUSTOM_CMD, __server_custom_cmd_cb},
+ {MC_DBUS_SIGNAL_NAME_CUSTOM_COMMAND, __server_custom_command_cb}, //deprecated one
+ {MC_DBUS_SIGNAL_NAME_EVENT_REPLY, __server_event_reply_received_cb},
+};
+
static int __mc_server_create(media_controller_server_s **mc_server)
{
int ret = MEDIA_CONTROLLER_ERROR_NONE;
return ret;
}
-int mc_server_set_playback_state_command_received_cb(mc_server_h server, mc_server_playback_state_command_received_cb callback, void *user_data)
+static int __mc_server_set_updated_cb(mc_server_h server, mc_server_receive_event_e event, void *callback, void *user_data)
{
int ret = MEDIA_CONTROLLER_ERROR_NONE;
media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_warning("DEPRECATION WARNING: mc_server_set_playback_state_command_received_cb() is deprecated and will be removed from next release. Use mc_server_set_playback_action_cmd_received_cb() instead.");
+ char *interface_name = NULL;
mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
mc_retvm_if(callback == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "callback is NULL");
+ mc_retvm_if(((event < MC_SERVER_EVENT_PLAYBACK_STATE) || (event >= MC_SERVER_EVENT_MAX)) , MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid event [%d]", event);
+
+ mc_server->updated_cb[event].callback = callback;
+ mc_server->updated_cb[event].user_data = user_data;
- mc_server->playback_state_reciever.callback = callback;
- mc_server->playback_state_reciever.user_data = user_data;
+ interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_register_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_PLAYBACK_STATE_CMD, __server_playback_state_command_cb, (void *)&(mc_server->playback_state_reciever));
+ ret = mc_ipc_register_listener(&mc_server->listeners, mc_server->dconn, interface_name, cb_event[event].signal_name, cb_event[event].cb_func, (void *)&(mc_server->updated_cb[event]));
MC_SAFE_FREE(interface_name);
return ret;
}
-int mc_server_unset_playback_state_command_received_cb(mc_server_h server)
+static int __mc_server_unset_updated_cb(mc_server_h server, mc_server_receive_event_e event)
{
int ret = MEDIA_CONTROLLER_ERROR_NONE;
media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_warning("DEPRECATION WARNING: mc_server_set_playback_state_command_received_cb() is deprecated and will be removed from next release. Use mc_server_unset_playback_action_cmd_received_cb() instead.");
+ char *interface_name = NULL;
mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
+ mc_retvm_if(((event < MC_SERVER_EVENT_PLAYBACK_STATE) || (event >= MC_SERVER_EVENT_MAX)) , MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid event [%d]", event);
+
+ interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_unregister_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_PLAYBACK_STATE_CMD);
+ ret = mc_ipc_unregister_listener(&mc_server->listeners, mc_server->dconn, interface_name, cb_event[event].signal_name);
- mc_server->playback_state_reciever.callback = NULL;
- mc_server->playback_state_reciever.user_data = NULL;
+ mc_server->updated_cb[event].callback = NULL;
+ mc_server->updated_cb[event].user_data = NULL;
MC_SAFE_FREE(interface_name);
return ret;
}
-int mc_server_set_playback_action_cmd_received_cb(mc_server_h server, mc_server_playback_action_cmd_received_cb callback, void *user_data)
+int mc_server_set_playback_state_command_received_cb(mc_server_h server, mc_server_playback_state_command_received_cb callback, void *user_data)
{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
- mc_retvm_if(callback == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "callback is NULL");
+ mc_warning("DEPRECATION WARNING: mc_server_set_playback_state_command_received_cb() is deprecated and will be removed from next release. Use mc_server_set_playback_action_cmd_received_cb() instead.");
- mc_server->playback_action_reciever.callback = callback;
- mc_server->playback_action_reciever.user_data = user_data;
+ return __mc_server_set_updated_cb(server, MC_SERVER_EVENT_PLAYBACK_STATE, callback, user_data);
+}
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_register_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_PLAYBACK_ACTION, __server_playback_action_cb, (void *)&(mc_server->playback_action_reciever));
+int mc_server_unset_playback_state_command_received_cb(mc_server_h server)
+{
+ mc_warning("DEPRECATION WARNING: mc_server_set_playback_state_command_received_cb() is deprecated and will be removed from next release. Use mc_server_unset_playback_action_cmd_received_cb() instead.");
- MC_SAFE_FREE(interface_name);
+ return __mc_server_unset_updated_cb(server, MC_SERVER_EVENT_PLAYBACK_STATE);
+}
- return ret;
+int mc_server_set_playback_action_cmd_received_cb(mc_server_h server, mc_server_playback_action_cmd_received_cb callback, void *user_data)
+{
+ return __mc_server_set_updated_cb(server, MC_SERVER_EVENT_PLAYBACK_ACTION, callback, user_data);
}
int mc_server_unset_playback_action_cmd_received_cb(mc_server_h server)
{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_unregister_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_PLAYBACK_ACTION);
-
- mc_server->playback_action_reciever.callback = NULL;
- mc_server->playback_action_reciever.user_data = NULL;
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
+ return __mc_server_unset_updated_cb(server, MC_SERVER_EVENT_PLAYBACK_ACTION);
}
int mc_server_set_playback_position_cmd_received_cb(mc_server_h server, mc_server_playback_position_cmd_received_cb callback, void *user_data)
{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
- mc_retvm_if(callback == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "callback is NULL");
-
- mc_server->playback_position_reciever.callback = callback;
- mc_server->playback_position_reciever.user_data = user_data;
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_register_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_PLAYBACK_POS_CMD, __server_playback_position_cmd_cb, (void *)&(mc_server->playback_position_reciever));
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
+ return __mc_server_set_updated_cb(server, MC_SERVER_EVENT_PLAYBACK_POSITION, callback, user_data);
}
int mc_server_unset_playback_position_cmd_received_cb(mc_server_h server)
{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_unregister_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_PLAYBACK_POS_CMD);
-
- mc_server->playback_position_reciever.callback = NULL;
- mc_server->playback_position_reciever.user_data = NULL;
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
+ return __mc_server_unset_updated_cb(server, MC_SERVER_EVENT_PLAYBACK_POSITION);
}
int mc_server_set_shuffle_mode_cmd_received_cb(mc_server_h server, mc_server_shuffle_mode_cmd_received_cb callback, void *user_data)
{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
- mc_retvm_if(callback == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "callback is NULL");
-
- mc_server->shuffle_mode_reciever.callback = callback;
- mc_server->shuffle_mode_reciever.user_data = user_data;
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_register_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_SHUFFLE_CMD, __server_shuffle_mode_cmd_cb, (void *)&(mc_server->shuffle_mode_reciever));
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
+ return __mc_server_set_updated_cb(server, MC_SERVER_EVENT_SHUFFLE, callback, user_data);
}
int mc_server_unset_shuffle_mode_cmd_received_cb(mc_server_h server)
{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_unregister_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_SHUFFLE_CMD);
-
- mc_server->shuffle_mode_reciever.callback = NULL;
- mc_server->shuffle_mode_reciever.user_data = NULL;
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
+ return __mc_server_unset_updated_cb(server, MC_SERVER_EVENT_SHUFFLE);
}
int mc_server_set_repeat_mode_cmd_received_cb(mc_server_h server, mc_server_repeat_mode_cmd_received_cb callback, void *user_data)
{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
- mc_retvm_if(callback == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "callback is NULL");
-
- mc_server->repeat_mode_reciever.callback = callback;
- mc_server->repeat_mode_reciever.user_data = user_data;
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_register_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_REPEAT_CMD, __server_repeat_mode_cmd_cb, (void *)&(mc_server->repeat_mode_reciever));
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
+ return __mc_server_set_updated_cb(server, MC_SERVER_EVENT_REPEAT, callback, user_data);
}
int mc_server_unset_repeat_mode_cmd_received_cb(mc_server_h server)
{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_unregister_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_REPEAT_CMD);
-
- mc_server->repeat_mode_reciever.callback = NULL;
- mc_server->repeat_mode_reciever.user_data = NULL;
+ return __mc_server_unset_updated_cb(server, MC_SERVER_EVENT_REPEAT);
+}
- MC_SAFE_FREE(interface_name);
+int mc_server_set_playlist_cmd_received_cb(mc_server_h server, mc_server_playlist_cmd_received_cb callback, void *user_data)
+{
+ return __mc_server_set_updated_cb(server, MC_SERVER_EVENT_PLAYLIST, callback, user_data);
+}
- return ret;
+int mc_server_unset_playlist_cmd_received_cb(mc_server_h server)
+{
+ return __mc_server_unset_updated_cb(server, MC_SERVER_EVENT_PLAYLIST);
}
int mc_server_set_custom_command_received_cb(mc_server_h server, mc_server_custom_command_received_cb callback, void *user_data)
{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
- mc_retvm_if(callback == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "callback is NULL");
+ mc_warning("DEPRECATION WARNING: mc_server_set_custom_command_received_cb() is deprecated and will be removed from next release. Use mc_server_set_custom_cmd_received_cb() instead.");
- mc_server->custom_command_reciever.callback = callback;
- mc_server->custom_command_reciever.user_data = user_data;
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_register_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_CUSTOM_COMMAND, __server_custom_command_cb, (void *)&(mc_server->custom_command_reciever));
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
+ return __mc_server_set_updated_cb(server, MC_SERVER_EVENT_CLIENT_CUSTOM_OLD, callback, user_data);
}
int mc_server_unset_custom_command_received_cb(mc_server_h server)
{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
+ mc_warning("DEPRECATION WARNING: mc_server_unset_custom_command_received_cb() is deprecated and will be removed from next release. Use mc_server_unset_custom_cmd_received_cb() instead.");
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
+ return __mc_server_unset_updated_cb(server, MC_SERVER_EVENT_CLIENT_CUSTOM_OLD);
+}
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_unregister_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_CUSTOM_COMMAND);
+int mc_server_set_custom_cmd_received_cb(mc_server_h server, mc_server_custom_cmd_received_cb callback, void *user_data)
+{
+ return __mc_server_set_updated_cb(server, MC_SERVER_EVENT_CLIENT_CUSTOM, callback, user_data);
+}
- mc_server->custom_command_reciever.callback = NULL;
- mc_server->custom_command_reciever.user_data = NULL;
+int mc_server_unset_custom_cmd_received_cb(mc_server_h server)
+{
+ return __mc_server_unset_updated_cb(server, MC_SERVER_EVENT_CLIENT_CUSTOM);
+}
- MC_SAFE_FREE(interface_name);
+int mc_server_set_event_reply_received_cb(mc_server_h server, mc_server_event_reply_received_cb callback, void *user_data)
+{
+ return __mc_server_set_updated_cb(server, MC_SERVER_EVENT_REPLY_CUSTOM, callback, user_data);
+}
- return ret;
+int mc_server_unset_event_reply_received_cb(mc_server_h server)
+{
+ return __mc_server_unset_updated_cb(server, MC_SERVER_EVENT_REPLY_CUSTOM);
}
int mc_server_send_command_reply(mc_server_h server, const char *client_name, int result_code, bundle *data)
return ret;
}
-int mc_server_set_playlist_cmd_received_cb(mc_server_h server, mc_server_playlist_cmd_received_cb callback, void *user_data)
-{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
- mc_retvm_if(callback == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "callback is NULL");
-
- mc_server->play_playlist_reciever.callback = callback;
- mc_server->play_playlist_reciever.user_data = user_data;
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_register_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_PLAYBACK_PLAYLIST, __server_play_playlist_cmd_cb, (void *)&(mc_server->play_playlist_reciever));
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
-}
-
-int mc_server_unset_playlist_cmd_received_cb(mc_server_h server)
-{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_unregister_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_PLAYBACK_PLAYLIST);
-
- mc_server->play_playlist_reciever.callback = NULL;
- mc_server->play_playlist_reciever.user_data = NULL;
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
-}
-
-int mc_server_set_custom_cmd_received_cb(mc_server_h server, mc_server_custom_cmd_received_cb callback, void *user_data)
-{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
- mc_retvm_if(callback == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "callback is NULL");
-
- mc_server->custom_cmd_reciever.callback = callback;
- mc_server->custom_cmd_reciever.user_data = user_data;
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_register_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_CUSTOM_CMD, __server_custom_cmd_cb, (void *)&(mc_server->custom_cmd_reciever));
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
-}
-
-int mc_server_unset_custom_cmd_received_cb(mc_server_h server)
-{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_unregister_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_CUSTOM_CMD);
-
- mc_server->custom_cmd_reciever.callback = NULL;
- mc_server->custom_cmd_reciever.user_data = NULL;
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
-}
-
int mc_server_send_cmd_reply(mc_server_h server, const char *client_name, const char *request_id, int result_code, bundle *data)
{
int ret = MEDIA_CONTROLLER_ERROR_NONE;
return ret;
}
-int mc_server_set_event_reply_received_cb(mc_server_h server, mc_server_event_reply_received_cb callback, void *user_data)
-{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
- mc_retvm_if(callback == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "callback is NULL");
- mc_retvm_if(mc_server->event_reply_receiver.callback != NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "callback is already set");
-
- mc_server->event_reply_receiver.callback = callback;
- mc_server->event_reply_receiver.user_data = user_data;
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_register_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_EVENT_REPLY,
- __server_event_reply_received_cb, (void *)&(mc_server->event_reply_receiver));
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
-}
-
-int mc_server_unset_event_reply_received_cb(mc_server_h server)
-{
- int ret = MEDIA_CONTROLLER_ERROR_NONE;
- media_controller_server_s *mc_server = (media_controller_server_s *)server;
-
- mc_retvm_if(mc_server == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Handle is NULL");
-
- char *interface_name = mc_util_get_interface_name(MC_SERVER, mc_server->server_name);
- ret = mc_ipc_unregister_listener(&mc_server->listeners, mc_server->dconn, interface_name, MC_DBUS_SIGNAL_NAME_EVENT_REPLY);
-
- mc_server->event_reply_receiver.callback = NULL;
- mc_server->event_reply_receiver.user_data = NULL;
-
- MC_SAFE_FREE(interface_name);
-
- return ret;
-}
-
int mc_server_set_icon(mc_server_h server, const char *uri)
{
int ret = MEDIA_CONTROLLER_ERROR_NONE;