From 9f5456801067aabb506df4635f7f84f776f211a0 Mon Sep 17 00:00:00 2001 From: Jason Parker Date: Thu, 6 Jun 2013 19:44:45 +0000 Subject: Convert message_router routes to ao2. Add support for removal. Review: https://reviewboard.asterisk.org/r/2591/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@390698 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- include/asterisk/stasis_message_router.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'include') diff --git a/include/asterisk/stasis_message_router.h b/include/asterisk/stasis_message_router.h index e7d5a4cc6..81a636dcd 100644 --- a/include/asterisk/stasis_message_router.h +++ b/include/asterisk/stasis_message_router.h @@ -47,9 +47,12 @@ struct stasis_message_router; /*! * \brief Create a new message router object. + * * \param topic Topic to subscribe route to. + * * \return New \ref stasis_message_router. * \return \c NULL on error. + * * \since 12 */ struct stasis_message_router *stasis_message_router_create( @@ -59,6 +62,7 @@ struct stasis_message_router *stasis_message_router_create( * \brief Unsubscribe the router from the upstream topic. * * \param router Router to unsubscribe. + * * \since 12 */ void stasis_message_router_unsubscribe(struct stasis_message_router *router); @@ -71,6 +75,7 @@ void stasis_message_router_unsubscribe(struct stasis_message_router *router); * vs. stasis_message_router_unsubscribe(). * * \param router Router to unsubscribe. + * * \since 12 */ void stasis_message_router_unsubscribe_and_join( @@ -80,6 +85,7 @@ void stasis_message_router_unsubscribe_and_join( * \brief Returns whether \a router has received its final message. * * \param router Router. + * * \return True (non-zero) if stasis_subscription_final_message() has been * received. * \return False (zero) if waiting for the end. @@ -88,10 +94,15 @@ int stasis_message_router_is_done(struct stasis_message_router *router); /*! * \brief Add a route to a message router. + * * \param router Router to add the route to. * \param message_type Type of message to route. * \param callback Callback to forard messages of \a message_type to. * \param data Data pointer to pass to \a callback. + * + * \retval 0 on success + * \retval -1 on failure + * * \since 12 */ int stasis_message_router_add(struct stasis_message_router *router, @@ -99,11 +110,27 @@ int stasis_message_router_add(struct stasis_message_router *router, stasis_subscription_cb callback, void *data); +/*! + * \brief Remove a route from a message router. + * + * \param router Router to remove the route from. + * \param message_type Type of message to route. + * + * \since 12 + */ +void stasis_message_router_remove(struct stasis_message_router *router, + struct stasis_message_type *message_type); + /*! * \brief Sets the default route of a router. + * * \param router Router to set the default route of. * \param callback Callback to forard messages which otherwise have no home. * \param data Data pointer to pass to \a callback. + * + * \retval 0 on success + * \retval -1 on failure + * * \since 12 */ int stasis_message_router_set_default(struct stasis_message_router *router, -- cgit v1.2.3