diff options
author | Joshua Colp <jcolp@digium.com> | 2013-02-16 16:24:21 +0000 |
---|---|---|
committer | Joshua Colp <jcolp@digium.com> | 2013-02-16 16:24:21 +0000 |
commit | cce1c9547facb5cf28dc4e74f9d2369e83f3a212 (patch) | |
tree | ffb07b4eb1b7d7ec2ce5b294fdca3810c8413436 /include/asterisk | |
parent | c209e85ad31ac3983a0eb7684055cdd808cbd8fe (diff) |
Add support for retrieving multiple objects from sorcery using a regex on their id.
Review: https://reviewboard.asterisk.org/r/2329/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@381614 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include/asterisk')
-rw-r--r-- | include/asterisk/sorcery.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/asterisk/sorcery.h b/include/asterisk/sorcery.h index e5f727a7b..b5344c61c 100644 --- a/include/asterisk/sorcery.h +++ b/include/asterisk/sorcery.h @@ -197,6 +197,9 @@ struct ast_sorcery_wizard { /*! \brief Callback for retrieving an object using an id */ void *(*retrieve_id)(const struct ast_sorcery *sorcery, void *data, const char *type, const char *id); + /*! \brief Callback for retrieving multiple objects using a regex on their id */ + void (*retrieve_regex)(const struct ast_sorcery *sorcery, void *data, const char *type, struct ao2_container *objects, const char *regex); + /*! \brief Optional callback for retrieving an object using fields */ void *(*retrieve_fields)(const struct ast_sorcery *sorcery, void *data, const char *type, const struct ast_variable *fields); @@ -549,6 +552,20 @@ void *ast_sorcery_retrieve_by_id(const struct ast_sorcery *sorcery, const char * void *ast_sorcery_retrieve_by_fields(const struct ast_sorcery *sorcery, const char *type, unsigned int flags, struct ast_variable *fields); /*! + * \brief Retrieve multiple objects using a regular expression on their id + * + * \param sorcery Pointer to a sorcery structure + * \param type Type of object to retrieve + * \param regex Regular expression + * + * \retval non-NULL if error occurs + * \retval NULL success + * + * \note The provided regex is treated as extended case sensitive. + */ +struct ao2_container *ast_sorcery_retrieve_by_regex(const struct ast_sorcery *sorcery, const char *type, const char *regex); + +/*! * \brief Update an object * * \param sorcery Pointer to a sorcery structure |