summaryrefslogtreecommitdiff
path: root/include/asterisk/bucket.h
diff options
context:
space:
mode:
authorMatt Jordan <mjordan@digium.com>2015-07-11 20:25:19 -0500
committerMatt Jordan <mjordan@digium.com>2015-07-12 20:44:16 -0500
commit887945d410399f299bfc98eb226232ae42105112 (patch)
treeff1c0340b8bf7f88646421f923e2126841c3e0e1 /include/asterisk/bucket.h
parent59711b0eee26ce093b3fc50896880db00fe63939 (diff)
main/bucket: Add a callback function for ast_bucket_file objects
This patch adds a new function to the bucket API for ast_bucket_file objects, ast_bucket_file_metadata_callback. It will call ao2_callback on the ast_bucket_file's ao2_container of metadata, calling the provided ao2_callback_fn callback on each piece of metadata associated with the file. This is particularly useful when a bucket backend has added metadata, and a higher level API wants to be aware of/access said metadata, without knowing for sure what the key is. Change-Id: I96f6757717f47b650df91a437f7df16406227466
Diffstat (limited to 'include/asterisk/bucket.h')
-rw-r--r--include/asterisk/bucket.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/asterisk/bucket.h b/include/asterisk/bucket.h
index c335fd351..4a27c3c18 100644
--- a/include/asterisk/bucket.h
+++ b/include/asterisk/bucket.h
@@ -195,6 +195,17 @@ int ast_bucket_file_metadata_unset(struct ast_bucket_file *file, const char *nam
struct ast_bucket_metadata *ast_bucket_file_metadata_get(struct ast_bucket_file *file, const char *name);
/*!
+ * \brief Execute a callback function on the metadata associated with a file
+ * \since 14.0.0
+ *
+ * \param file The bucket file
+ * \param cb An ao2 callback function that will be called with each \c ast_bucket_metadata
+ * associated with \c file
+ * \param arg An optional argument to pass to \c cb
+ */
+void ast_bucket_file_metadata_callback(struct ast_bucket_file *file, ao2_callback_fn cb, void *arg);
+
+/*!
* \brief Allocate a new bucket
*
* \param uri Complete URI for the bucket